home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / lisp / kcl / akcl / akcl1615.lha / mp / mpi-386.s < prev    next >
Text File  |  1991-03-25  |  44KB  |  2,871 lines

  1.     .file    "mpi.c"
  2. gcc_compiled.:
  3. .text
  4.     .align 4
  5. .globl mulsi
  6. mulsi:
  7.     pushl %ebp
  8.     movl %esp,%ebp
  9.     subl $28,%esp
  10.     pushl %edi
  11.     pushl %esi
  12.     pushl %ebx
  13.     movl 8(%ebp),%eax
  14.     movl %eax,-4(%ebp)
  15.     movl 12(%ebp),%ebx
  16.     movl 4(%ebx),%eax
  17.     sarl $24,%eax
  18.     movl %eax,-8(%ebp)
  19.     movl 4(%ebx),%eax
  20.     andl $65535,%eax
  21.     movl %eax,-12(%ebp)
  22.     cmpl $0,-4(%ebp)
  23.     je .L3
  24.     cmpl $0,-8(%ebp)
  25.     jne .L2
  26. .L3:
  27.     movl gzero,%eax
  28.     jmp .L1
  29. .L2:
  30.     cmpl $0,-4(%ebp)
  31.     jge .L4
  32.     negl -8(%ebp)
  33.     negl -4(%ebp)
  34.     jns .L4
  35.     pushl %ebx
  36.     pushl $-2147483648
  37.     call stoi
  38.     leal 4(%esp),%esp
  39.     pushl %eax
  40.     call mulii
  41.     jmp .L1
  42. .L4:
  43.     movl -12(%ebp),%eax
  44.     incl %eax
  45.     pushl %eax
  46.     call cgeti
  47.     movl %eax,%edi
  48.     xorl %ecx,%ecx
  49.     movl -12(%ebp),%eax
  50.     leal (,%eax,4),%eax
  51.     movl %eax,-20(%ebp)
  52.     leal (%eax,%ebx),%edx
  53.     movl %edx,-16(%ebp)
  54.     leal 4(%eax,%edi),%ebx
  55.     movl -12(%ebp),%eax
  56.     decl %eax
  57.     movl %eax,-28(%ebp)
  58.     jmp .L6
  59. .L8:
  60.     leal -4(%ebx),%ebx
  61.     movl %ecx,-20(%ebp)
  62.     movl -16(%ebp),%eax
  63.     leal -4(%eax),%edx
  64.     movl %edx,-16(%ebp)
  65.     movl %edx,%esi
  66.     movl -4(%ebp),%eax
  67. /APP
  68.     mull (%esi)
  69. /NO_APP
  70.     movl %edx,%ecx
  71.     movl %eax,-24(%ebp)
  72.     movl -20(%ebp),%eax
  73. /APP
  74.     addl -24(%ebp),%eax
  75.     adcl $0,%ecx
  76. /NO_APP
  77.     movl %eax,(%ebx)
  78. .L6:
  79.     decl -28(%ebp)
  80.     jne .L8
  81.     testl %ecx,%ecx
  82.     je .L9
  83.     movl %ecx,-4(%ebx)
  84.     movl 4(%edi),%eax
  85.     andl $-65536,%eax
  86.     movl -12(%ebp),%edx
  87.     leal 1(%edx,%eax),%edx
  88.     movl %edx,4(%edi)
  89.     jmp .L10
  90. .L9:
  91.     addl $4,avma
  92.     movl (%edi),%eax
  93.     decl %eax
  94.     movl %eax,4(%edi)
  95.     leal 4(%edi),%edi
  96.     movl 4(%edi),%eax
  97.     andl $-65536,%eax
  98.     addl -12(%ebp),%eax
  99.     movl %eax,4(%edi)
  100. .L10:
  101.     movl 4(%edi),%eax
  102.     andl $16777215,%eax
  103.     movl -8(%ebp),%edx
  104.     sall $24,%edx
  105.     addl %edx,%eax
  106.     movl %eax,4(%edi)
  107.     movl %edi,%eax
  108. .L1:
  109.     leal -40(%ebp),%esp
  110.     popl %ebx
  111.     popl %esi
  112.     popl %edi
  113.     leave
  114.     ret
  115.     .align 4
  116. .globl expi
  117. expi:
  118.     pushl %ebp
  119.     movl %esp,%ebp
  120.     pushl %ebx
  121.     movl 8(%ebp),%eax
  122.     movl 4(%eax),%ebx
  123.     andl $65535,%ebx
  124.     cmpl $2,%ebx
  125.     jne .L12
  126.     movl $-8388608,%eax
  127.     jmp .L13
  128. .L12:
  129.     pushl 8(%eax)
  130.     call bfffo
  131.     leal -2(%ebx),%edx
  132.     sall $5,%edx
  133.     subl %eax,%edx
  134.     movl %edx,%eax
  135.     decl %eax
  136. .L13:
  137.     leal -4(%ebp),%esp
  138.     popl %ebx
  139.     leave
  140.     ret
  141.     .align 4
  142. .globl addsi
  143. addsi:
  144.     pushl %ebp
  145.     movl %esp,%ebp
  146.     subl $12,%esp
  147.     pushl %edi
  148.     pushl %esi
  149.     pushl %ebx
  150.     movl 8(%ebp),%esi
  151.     movl 12(%ebp),%edi
  152.     testl %esi,%esi
  153.     jne .L15
  154.     pushl %edi
  155.     call icopy
  156.     jmp .L14
  157. .L15:
  158.     movl 4(%edi),%ebx
  159.     sarl $24,%ebx
  160.     movl %ebx,-8(%ebp)
  161.     jne .L16
  162.     pushl %esi
  163.     call stoi
  164.     jmp .L14
  165. .L16:
  166.     testl %esi,%esi
  167.     jge .L17
  168.     movl $-1,-4(%ebp)
  169.     negl %esi
  170.     jns .L19
  171.     pushl %edi
  172.     pushl $MOST_NEGS
  173.     call addii
  174.     jmp .L14
  175. .L17:
  176.     movl $1,-4(%ebp)
  177. .L19:
  178.     movl 4(%edi),%ebx
  179.     andl $65535,%ebx
  180.     movl %ebx,-12(%ebp)
  181.     movl -8(%ebp),%ebx
  182.     cmpl -4(%ebp),%ebx
  183.     jne .L20
  184.     movl %esi,%edx
  185.     movl -12(%ebp),%ebx
  186.     movl %edx,%ecx
  187.     addl -4(%edi,%ebx,4),%ecx
  188.     cmpl %ecx,%edx
  189.     jbe .L21
  190.     movl $1,%eax
  191.     jmp .L22
  192. .L21:
  193.     xorl %eax,%eax
  194. .L22:
  195.     movl %ecx,%esi
  196.     testl %eax,%eax
  197.     je .L23
  198.     movl -12(%ebp),%eax
  199.     incl %eax
  200.     pushl %eax
  201.     call cgeti
  202.     movl %eax,%ecx
  203.     movl -12(%ebp),%ebx
  204.     movl %esi,(%ecx,%ebx,4)
  205.     movl %ebx,%eax
  206.     jmp .L65
  207. .L27:
  208.     cmpl $-1,-4(%edi,%eax,4)
  209.     jne .L25
  210.     movl $0,(%ecx,%eax,4)
  211. .L65:
  212.     decl %eax
  213.     cmpl $2,%eax
  214.     jg .L27
  215. .L25:
  216.     cmpl $2,%eax
  217.     jle .L28
  218.     movl -4(%edi,%eax,4),%ebx
  219.     incl %ebx
  220.     jmp .L66
  221. .L31:
  222.     movl -4(%edi,%eax,4),%ebx
  223. .L66:
  224.     movl %ebx,(%ecx,%eax,4)
  225.     decl %eax
  226.     cmpl $2,%eax
  227.     jg .L31
  228.     movl (%ecx),%eax
  229.     decl %eax
  230.     movl %eax,4(%ecx)
  231.     movl %eax,8(%ecx)
  232.     leal 4(%ecx),%ecx
  233.     addl $4,avma
  234.     jmp .L33
  235. .L28:
  236.     movl $1,8(%ecx)
  237.     movl (%ecx),%ebx
  238.     movl %ebx,4(%ecx)
  239.     jmp .L33
  240. .L23:
  241.     pushl -12(%ebp)
  242.     call cgeti
  243.     movl %eax,%ecx
  244.     movl -12(%ebp),%ebx
  245.     movl %esi,-4(%ecx,%ebx,4)
  246.     movl $1,%eax
  247.     movl %ebx,%edx
  248.     decl %edx
  249.     jmp .L34
  250. .L37:
  251.     movl (%edi,%eax,4),%ebx
  252.     movl %ebx,(%ecx,%eax,4)
  253.     incl %eax
  254. .L34:
  255.     cmpl %eax,%edx
  256.     jg .L37
  257. .L33:
  258.     movl 4(%ecx),%eax
  259.     andl $16777215,%eax
  260.     movl -4(%ebp),%edx
  261.     jmp .L67
  262. .L20:
  263.     cmpl $3,-12(%ebp)
  264.     jne .L39
  265.     cmpl 8(%edi),%esi
  266.     jae .L40
  267.     pushl $3
  268.     call cgeti
  269.     movl %eax,%ecx
  270.     movl -8(%ebp),%eax
  271.     sall $24,%eax
  272.     addl $3,%eax
  273.     movl %eax,4(%ecx)
  274.     movl 8(%edi),%ebx
  275.     subl %esi,%ebx
  276.     movl %ebx,8(%ecx)
  277.     jmp .L38
  278. .L40:
  279.     cmpl 8(%edi),%esi
  280.     jne .L41
  281.     movl gzero,%eax
  282.     jmp .L14
  283. .L41:
  284.     pushl $3
  285.     call cgeti
  286.     movl %eax,%ecx
  287.     movl -8(%ebp),%eax
  288.     negl %eax
  289.     sall $24,%eax
  290.     addl $3,%eax
  291.     movl %eax,4(%ecx)
  292.     subl 8(%edi),%esi
  293.     movl %esi,8(%ecx)
  294.     jmp .L38
  295. .L39:
  296.     movl -12(%ebp),%ebx
  297.     movl -4(%edi,%ebx,4),%edx
  298.     movl %esi,%eax
  299.     movl %edx,%ecx
  300.     subl %eax,%ecx
  301.     cmpl %edx,%eax
  302.     ja .L42
  303.     xorl %eax,%eax
  304.     jmp .L43
  305. .L42:
  306.     movl $1,%eax
  307. .L43:
  308.     movl %ecx,%esi
  309.     testl %eax,%eax
  310.     je .L44
  311.     pushl -12(%ebp)
  312.     call cgeti
  313.     movl %eax,%ecx
  314.     movl -12(%ebp),%ebx
  315.     movl %esi,-4(%ecx,%ebx,4)
  316.     leal -2(%ebx),%eax
  317.     cmpl $0,(%edi,%eax,4)
  318.     jne .L62
  319. .L48:
  320.     movl $-1,(%ecx,%eax,4)
  321.     decl %eax
  322.     cmpl $0,(%edi,%eax,4)
  323.     je .L48
  324. .L62:
  325.     movl (%edi,%eax,4),%edx
  326.     decl %edx
  327.     movl %edx,(%ecx,%eax,4)
  328.     cmpl $2,%eax
  329.     jg .L50
  330.     testl %edx,%edx
  331.     je .L49
  332. .L50:
  333.     decl %eax
  334.     testl %eax,%eax
  335.     jle .L38
  336. .L54:
  337.     movl (%edi,%eax,4),%ebx
  338.     movl %ebx,(%ecx,%eax,4)
  339.     decl %eax
  340.     testl %eax,%eax
  341.     jg .L54
  342.     jmp .L38
  343. .L49:
  344.     movl (%ecx),%eax
  345.     decl %eax
  346.     movl %eax,4(%ecx)
  347.     movl %eax,8(%ecx)
  348.     leal 4(%ecx),%ecx
  349.     addl $4,avma
  350.     movl 4(%ecx),%eax
  351.     andl $16777215,%eax
  352.     movl -8(%ebp),%edx
  353. .L67:
  354.     sall $24,%edx
  355.     addl %edx,%eax
  356.     movl %eax,4(%ecx)
  357.     jmp .L38
  358. .L44:
  359.     pushl -12(%ebp)
  360.     call cgeti
  361.     movl %eax,%ecx
  362.     movl -12(%ebp),%ebx
  363.     movl %esi,-4(%ecx,%ebx,4)
  364.     movl $1,%eax
  365.     movl %ebx,%edx
  366.     decl %edx
  367.     jmp .L57
  368. .L60:
  369.     movl (%edi,%eax,4),%ebx
  370.     movl %ebx,(%ecx,%eax,4)
  371.     incl %eax
  372. .L57:
  373.     cmpl %eax,%edx
  374.     jg .L60
  375. .L38:
  376.     movl %ecx,%eax
  377. .L14:
  378.     leal -24(%ebp),%esp
  379.     popl %ebx
  380.     popl %esi
  381.     popl %edi
  382.     leave
  383.     ret
  384.     .align 4
  385. .globl addii
  386. addii:
  387.     pushl %ebp
  388.     movl %esp,%ebp
  389.     subl $36,%esp
  390.     pushl %edi
  391.     pushl %esi
  392.     pushl %ebx
  393.     movl 8(%ebp),%edi
  394.     movl %edi,-4(%ebp)
  395.     movl 12(%ebp),%edi
  396.     movl %edi,-28(%ebp)
  397.     movl -4(%ebp),%edi
  398.     movl 4(%edi),%edx
  399.     andl $65535,%edx
  400.     movl %edx,-16(%ebp)
  401.     movl -28(%ebp),%edi
  402.     movl 4(%edi),%edx
  403.     andl $65535,%edx
  404.     movl %edx,-20(%ebp)
  405.     cmpl -16(%ebp),%edx
  406.     jle .L69
  407.     movl -4(%ebp),%edi
  408.     movl %edi,-24(%ebp)
  409.     movl -28(%ebp),%edi
  410.     movl %edi,-4(%ebp)
  411.     movl -24(%ebp),%edi
  412.     movl %edi,-28(%ebp)
  413.     movl -16(%ebp),%edi
  414.     movl %edi,-8(%ebp)
  415.     movl %edx,-16(%ebp)
  416.     movl %edi,-20(%ebp)
  417. .L69:
  418.     movl -28(%ebp),%edi
  419.     movl 4(%edi),%edx
  420.     sarl $24,%edx
  421.     movl %edx,-12(%ebp)
  422.     jne .L70
  423.     pushl -4(%ebp)
  424.     call icopy
  425.     jmp .L68
  426. .L70:
  427.     movl -4(%ebp),%edi
  428.     movl 4(%edi),%edx
  429.     sarl $24,%edx
  430.     movl %edx,-8(%ebp)
  431.     movl -12(%ebp),%edi
  432.     cmpl %edx,%edi
  433.     jne .L71
  434.     movl -16(%ebp),%eax
  435.     incl %eax
  436.     pushl %eax
  437.     call cgeti
  438.     movl %eax,-24(%ebp)
  439.     movl $0,-32(%ebp)
  440.     movl -16(%ebp),%eax
  441.     leal (,%eax,4),%eax
  442.     movl -24(%ebp),%edi
  443.     leal 4(%eax,%edi),%ebx
  444.     movl -4(%ebp),%edi
  445.     leal (%eax,%edi),%esi
  446.     movl -28(%ebp),%edx
  447.     movl -20(%ebp),%edi
  448.     leal (%edx,%edi,4),%edx
  449.     movl %edx,-36(%ebp)
  450.     leal -2(%edi),%edi
  451.     movl %edi,-28(%ebp)
  452. .L72:
  453.     movl -28(%ebp),%eax
  454.     decl %eax
  455.     cmpl $15,%eax
  456.     ja .L77
  457.     jmp *.L109(,%eax,4)
  458. .L109:
  459.     .long .L107
  460.     .long .L105
  461.     .long .L103
  462.     .long .L101
  463.     .long .L99
  464.     .long .L97
  465.     .long .L95
  466.     .long .L93
  467.     .long .L91
  468.     .long .L89
  469.     .long .L87
  470.     .long .L85
  471.     .long .L83
  472.     .long .L81
  473.     .long .L79
  474.     .long .L77
  475. .L77:
  476.     movl -32(%ebp),%edi
  477. /APP
  478.     addl $-1,%edi
  479. /NO_APP
  480.     movl %edi,-32(%ebp)
  481.     jmp .L78
  482. .L79:
  483.     movl -32(%ebp),%edi
  484. /APP
  485.     addl $-1,%edi
  486. /NO_APP
  487.     movl %edi,-32(%ebp)
  488.     jmp .L80
  489. .L81:
  490.     movl -32(%ebp),%edi
  491. /APP
  492.     addl $-1,%edi
  493. /NO_APP
  494.     movl %edi,-32(%ebp)
  495.     jmp .L82
  496. .L83:
  497.     movl -32(%ebp),%edi
  498. /APP
  499.     addl $-1,%edi
  500. /NO_APP
  501.     movl %edi,-32(%ebp)
  502.     jmp .L84
  503. .L85:
  504.     movl -32(%ebp),%edi
  505. /APP
  506.     addl $-1,%edi
  507. /NO_APP
  508.     movl %edi,-32(%ebp)
  509.     jmp .L86
  510. .L87:
  511.     movl -32(%ebp),%edi
  512. /APP
  513.     addl $-1,%edi
  514. /NO_APP
  515.     movl %edi,-32(%ebp)
  516.     jmp .L88
  517. .L89:
  518.     movl -32(%ebp),%edi
  519. /APP
  520.     addl $-1,%edi
  521. /NO_APP
  522.     movl %edi,-32(%ebp)
  523.     jmp .L90
  524. .L91:
  525.     movl -32(%ebp),%edi
  526. /APP
  527.     addl $-1,%edi
  528. /NO_APP
  529.     movl %edi,-32(%ebp)
  530.     jmp .L92
  531. .L93:
  532.     movl -32(%ebp),%edi
  533. /APP
  534.     addl $-1,%edi
  535. /NO_APP
  536.     movl %edi,-32(%ebp)
  537.     jmp .L94
  538. .L95:
  539.     movl -32(%ebp),%edi
  540. /APP
  541.     addl $-1,%edi
  542. /NO_APP
  543.     movl %edi,-32(%ebp)
  544.     jmp .L96
  545. .L97:
  546.     movl -32(%ebp),%edi
  547. /APP
  548.     addl $-1,%edi
  549. /NO_APP
  550.     movl %edi,-32(%ebp)
  551.     jmp .L98
  552. .L99:
  553.     movl -32(%ebp),%edi
  554. /APP
  555.     addl $-1,%edi
  556. /NO_APP
  557.     movl %edi,-32(%ebp)
  558.     jmp .L100
  559. .L101:
  560.     movl -32(%ebp),%edi
  561. /APP
  562.     addl $-1,%edi
  563. /NO_APP
  564.     movl %edi,-32(%ebp)
  565.     jmp .L102
  566. .L103:
  567.     movl -32(%ebp),%edi
  568. /APP
  569.     addl $-1,%edi
  570. /NO_APP
  571.     movl %edi,-32(%ebp)
  572.     jmp .L104
  573. .L105:
  574.     movl -32(%ebp),%edi
  575. /APP
  576.     addl $-1,%edi
  577. /NO_APP
  578.     movl %edi,-32(%ebp)
  579.     jmp .L106
  580. .L107:
  581.     movl -32(%ebp),%edi
  582. /APP
  583.     addl $-1,%edi
  584. /NO_APP
  585.     movl %edi,-32(%ebp)
  586.     jmp .L108
  587. .L78:
  588.     leal -4(%ebx),%ebx
  589.     leal -4(%esi),%esi
  590.     movl -36(%ebp),%edi
  591.     leal -4(%edi),%edx
  592.     movl %edx,-36(%ebp)
  593.     movl (%esi),%edi
  594. /APP
  595.     adcl (%edx),%edi
  596. /NO_APP
  597.     movl %edi,(%ebx)
  598. .L80:
  599.     leal -4(%ebx),%ebx
  600.     leal -4(%esi),%esi
  601.     movl -36(%ebp),%edi
  602.     leal -4(%edi),%edx
  603.     movl %edx,-36(%ebp)
  604.     movl (%esi),%edi
  605. /APP
  606.     adcl (%edx),%edi
  607. /NO_APP
  608.     movl %edi,(%ebx)
  609. .L82:
  610.     leal -4(%ebx),%ebx
  611.     leal -4(%esi),%esi
  612.     movl -36(%ebp),%edi
  613.     leal -4(%edi),%edx
  614.     movl %edx,-36(%ebp)
  615.     movl (%esi),%edi
  616. /APP
  617.     adcl (%edx),%edi
  618. /NO_APP
  619.     movl %edi,(%ebx)
  620. .L84:
  621.     leal -4(%ebx),%ebx
  622.     leal -4(%esi),%esi
  623.     movl -36(%ebp),%edi
  624.     leal -4(%edi),%edx
  625.     movl %edx,-36(%ebp)
  626.     movl (%esi),%edi
  627. /APP
  628.     adcl (%edx),%edi
  629. /NO_APP
  630.     movl %edi,(%ebx)
  631. .L86:
  632.     leal -4(%ebx),%ebx
  633.     leal -4(%esi),%esi
  634.     movl -36(%ebp),%edi
  635.     leal -4(%edi),%edx
  636.     movl %edx,-36(%ebp)
  637.     movl (%esi),%edi
  638. /APP
  639.     adcl (%edx),%edi
  640. /NO_APP
  641.     movl %edi,(%ebx)
  642. .L88:
  643.     leal -4(%ebx),%ebx
  644.     leal -4(%esi),%esi
  645.     movl -36(%ebp),%edi
  646.     leal -4(%edi),%edx
  647.     movl %edx,-36(%ebp)
  648.     movl (%esi),%edi
  649. /APP
  650.     adcl (%edx),%edi
  651. /NO_APP
  652.     movl %edi,(%ebx)
  653. .L90:
  654.     leal -4(%ebx),%ebx
  655.     leal -4(%esi),%esi
  656.     movl -36(%ebp),%edi
  657.     leal -4(%edi),%edx
  658.     movl %edx,-36(%ebp)
  659.     movl (%esi),%edi
  660. /APP
  661.     adcl (%edx),%edi
  662. /NO_APP
  663.     movl %edi,(%ebx)
  664. .L92:
  665.     leal -4(%ebx),%ebx
  666.     leal -4(%esi),%esi
  667.     movl -36(%ebp),%edi
  668.     leal -4(%edi),%edx
  669.     movl %edx,-36(%ebp)
  670.     movl (%esi),%edi
  671. /APP
  672.     adcl (%edx),%edi
  673. /NO_APP
  674.     movl %edi,(%ebx)
  675. .L94:
  676.     leal -4(%ebx),%ebx
  677.     leal -4(%esi),%esi
  678.     movl -36(%ebp),%edi
  679.     leal -4(%edi),%edx
  680.     movl %edx,-36(%ebp)
  681.     movl (%esi),%edi
  682. /APP
  683.     adcl (%edx),%edi
  684. /NO_APP
  685.     movl %edi,(%ebx)
  686. .L96:
  687.     leal -4(%ebx),%ebx
  688.     leal -4(%esi),%esi
  689.     movl -36(%ebp),%edi
  690.     leal -4(%edi),%edx
  691.     movl %edx,-36(%ebp)
  692.     movl (%esi),%edi
  693. /APP
  694.     adcl (%edx),%edi
  695. /NO_APP
  696.     movl %edi,(%ebx)
  697. .L98:
  698.     leal -4(%ebx),%ebx
  699.     leal -4(%esi),%esi
  700.     movl -36(%ebp),%edi
  701.     leal -4(%edi),%edx
  702.     movl %edx,-36(%ebp)
  703.     movl (%esi),%edi
  704. /APP
  705.     adcl (%edx),%edi
  706. /NO_APP
  707.     movl %edi,(%ebx)
  708. .L100:
  709.     leal -4(%ebx),%ebx
  710.     leal -4(%esi),%esi
  711.     movl -36(%ebp),%edi
  712.     leal -4(%edi),%edx
  713.     movl %edx,-36(%ebp)
  714.     movl (%esi),%edi
  715. /APP
  716.     adcl (%edx),%edi
  717. /NO_APP
  718.     movl %edi,(%ebx)
  719. .L102:
  720.     leal -4(%ebx),%ebx
  721.     leal -4(%esi),%esi
  722.     movl -36(%ebp),%edi
  723.     leal -4(%edi),%edx
  724.     movl %edx,-36(%ebp)
  725.     movl (%esi),%edi
  726. /APP
  727.     adcl (%edx),%edi
  728. /NO_APP
  729.     movl %edi,(%ebx)
  730. .L104:
  731.     leal -4(%ebx),%ebx
  732.     leal -4(%esi),%esi
  733.     movl -36(%ebp),%edi
  734.     leal -4(%edi),%edx
  735.     movl %edx,-36(%ebp)
  736.     movl (%esi),%edi
  737. /APP
  738.     adcl (%edx),%edi
  739. /NO_APP
  740.     movl %edi,(%ebx)
  741. .L106:
  742.     leal -4(%ebx),%ebx
  743.     leal -4(%esi),%esi
  744.     movl -36(%ebp),%edi
  745.     leal -4(%edi),%edx
  746.     movl %edx,-36(%ebp)
  747.     movl (%esi),%edi
  748. /APP
  749.     adcl (%edx),%edi
  750. /NO_APP
  751.     movl %edi,(%ebx)
  752. .L108:
  753.     leal -4(%ebx),%ebx
  754.     leal -4(%esi),%esi
  755.     movl -36(%ebp),%edi
  756.     leal -4(%edi),%edx
  757.     movl %edx,-36(%ebp)
  758.     movl (%esi),%edi
  759. /APP
  760.     adcl (%edx),%edi
  761. /NO_APP
  762.     movl %edi,(%ebx)
  763. /APP
  764.     movl $0,-32(%ebp)
  765.     adcl $0,-32(%ebp)
  766. /NO_APP
  767.     movl -28(%ebp),%edi
  768.     leal -16(%edi),%edx
  769.     movl %edx,-28(%ebp)
  770.     testl %edx,%edx
  771.     jg .L72
  772.     cmpl $0,-32(%ebp)
  773.     je .L110
  774.     movl -4(%ebp),%edi
  775.     leal 8(%edi),%edi
  776.     movl %edi,-36(%ebp)
  777. .L111:
  778.     leal -4(%esi),%esi
  779.     movl %esi,%eax
  780.     cmpl -36(%ebp),%esi
  781.     jb .L112
  782.     cmpl $-1,(%esi)
  783.     jne .L113
  784.     leal -4(%ebx),%ebx
  785.     movl $0,(%ebx)
  786.     jmp .L111
  787. .L113:
  788.     leal -4(%ebx),%ebx
  789.     movl (%eax),%edi
  790.     incl %edi
  791.     jmp .L190
  792. .L117:
  793.     leal -4(%ebx),%ebx
  794.     movl (%eax),%edi
  795. .L190:
  796.     movl %edi,(%ebx)
  797.     leal -4(%esi),%esi
  798.     movl %esi,%eax
  799.     cmpl -36(%ebp),%esi
  800.     jae .L117
  801.     jmp .L191
  802. .L112:
  803.     movl -24(%ebp),%edi
  804.     movl $1,8(%edi)
  805.     movl -4(%ebp),%edx
  806.     movl 4(%edx),%ecx
  807.     incl %ecx
  808.     movl %ecx,4(%edi)
  809.     jmp .L123
  810. .L110:
  811.     movl -16(%ebp),%edi
  812.     subl -20(%ebp),%edi
  813.     movl %edi,-32(%ebp)
  814.     incl -32(%ebp)
  815.     jmp .L120
  816. .L122:
  817.     leal -4(%ebx),%ebx
  818.     leal -4(%esi),%esi
  819.     movl (%esi),%edi
  820.     movl %edi,(%ebx)
  821. .L120:
  822.     decl -32(%ebp)
  823.     jne .L122
  824. .L191:
  825.     movl -24(%ebp),%edi
  826.     movl (%edi),%edx
  827.     decl %edx
  828.     movl %edx,4(%edi)
  829.     movl -4(%ebp),%edx
  830.     movl 4(%edx),%ecx
  831.     movl %ecx,8(%edi)
  832.     leal 4(%edi),%edx
  833.     movl %edx,-24(%ebp)
  834.     addl $4,avma
  835.     jmp .L123
  836. .L71:
  837.     movl -20(%ebp),%edi
  838.     cmpl -16(%ebp),%edi
  839.     jne .L124
  840.     movl -16(%ebp),%edi
  841.     decl %edi
  842.     movl %edi,-32(%ebp)
  843.     movl -4(%ebp),%edi
  844.     leal 8(%edi),%esi
  845.     movl -28(%ebp),%edi
  846.     leal 8(%edi),%edi
  847.     movl %edi,-36(%ebp)
  848.     jmp .L125
  849. .L131:
  850.     movl (%esi),%ebx
  851.     leal 4(%esi),%esi
  852.     movl -36(%ebp),%edi
  853.     movl (%edi),%eax
  854.     leal 4(%edi),%edx
  855.     movl %edx,-36(%ebp)
  856.     cmpl %eax,%ebx
  857.     jae .L127
  858.     movl -4(%ebp),%edi
  859.     movl %edi,-24(%ebp)
  860.     movl -28(%ebp),%edi
  861.     movl %edi,-4(%ebp)
  862.     movl -24(%ebp),%edi
  863.     movl %edi,-28(%ebp)
  864.     movl -12(%ebp),%edi
  865.     movl %edi,-8(%ebp)
  866.     jmp .L124
  867. .L127:
  868.     cmpl %ebx,%eax
  869.     jb .L124
  870. .L125:
  871.     decl -32(%ebp)
  872.     jne .L131
  873.     movl gzero,%eax
  874.     jmp .L68
  875. .L124:
  876.     pushl -16(%ebp)
  877.     call cgeti
  878.     movl %eax,-24(%ebp)
  879.     movl $0,-32(%ebp)
  880.     movl -16(%ebp),%eax
  881.     leal (,%eax,4),%eax
  882.     movl -4(%ebp),%edi
  883.     leal (%eax,%edi),%esi
  884.     movl -28(%ebp),%edx
  885.     movl -20(%ebp),%edi
  886.     leal (%edx,%edi,4),%edx
  887.     movl %edx,-36(%ebp)
  888.     movl -24(%ebp),%edi
  889.     leal (%eax,%edi),%ebx
  890.     movl -20(%ebp),%edi
  891.     leal -2(%edi),%edi
  892.     movl %edi,-28(%ebp)
  893. .L133:
  894.     movl -28(%ebp),%eax
  895.     decl %eax
  896.     cmpl $15,%eax
  897.     ja .L138
  898.     jmp *.L170(,%eax,4)
  899. .L170:
  900.     .long .L168
  901.     .long .L166
  902.     .long .L164
  903.     .long .L162
  904.     .long .L160
  905.     .long .L158
  906.     .long .L156
  907.     .long .L154
  908.     .long .L152
  909.     .long .L150
  910.     .long .L148
  911.     .long .L146
  912.     .long .L144
  913.     .long .L142
  914.     .long .L140
  915.     .long .L138
  916. .L138:
  917.     movl -32(%ebp),%edi
  918. /APP
  919.     addl $-1,%edi
  920. /NO_APP
  921.     movl %edi,-32(%ebp)
  922.     jmp .L139
  923. .L140:
  924.     movl -32(%ebp),%edi
  925. /APP
  926.     addl $-1,%edi
  927. /NO_APP
  928.     movl %edi,-32(%ebp)
  929.     jmp .L141
  930. .L142:
  931.     movl -32(%ebp),%edi
  932. /APP
  933.     addl $-1,%edi
  934. /NO_APP
  935.     movl %edi,-32(%ebp)
  936.     jmp .L143
  937. .L144:
  938.     movl -32(%ebp),%edi
  939. /APP
  940.     addl $-1,%edi
  941. /NO_APP
  942.     movl %edi,-32(%ebp)
  943.     jmp .L145
  944. .L146:
  945.     movl -32(%ebp),%edi
  946. /APP
  947.     addl $-1,%edi
  948. /NO_APP
  949.     movl %edi,-32(%ebp)
  950.     jmp .L147
  951. .L148:
  952.     movl -32(%ebp),%edi
  953. /APP
  954.     addl $-1,%edi
  955. /NO_APP
  956.     movl %edi,-32(%ebp)
  957.     jmp .L149
  958. .L150:
  959.     movl -32(%ebp),%edi
  960. /APP
  961.     addl $-1,%edi
  962. /NO_APP
  963.     movl %edi,-32(%ebp)
  964.     jmp .L151
  965. .L152:
  966.     movl -32(%ebp),%edi
  967. /APP
  968.     addl $-1,%edi
  969. /NO_APP
  970.     movl %edi,-32(%ebp)
  971.     jmp .L153
  972. .L154:
  973.     movl -32(%ebp),%edi
  974. /APP
  975.     addl $-1,%edi
  976. /NO_APP
  977.     movl %edi,-32(%ebp)
  978.     jmp .L155
  979. .L156:
  980.     movl -32(%ebp),%edi
  981. /APP
  982.     addl $-1,%edi
  983. /NO_APP
  984.     movl %edi,-32(%ebp)
  985.     jmp .L157
  986. .L158:
  987.     movl -32(%ebp),%edi
  988. /APP
  989.     addl $-1,%edi
  990. /NO_APP
  991.     movl %edi,-32(%ebp)
  992.     jmp .L159
  993. .L160:
  994.     movl -32(%ebp),%edi
  995. /APP
  996.     addl $-1,%edi
  997. /NO_APP
  998.     movl %edi,-32(%ebp)
  999.     jmp .L161
  1000. .L162:
  1001.     movl -32(%ebp),%edi
  1002. /APP
  1003.     addl $-1,%edi
  1004. /NO_APP
  1005.     movl %edi,-32(%ebp)
  1006.     jmp .L163
  1007. .L164:
  1008.     movl -32(%ebp),%edi
  1009. /APP
  1010.     addl $-1,%edi
  1011. /NO_APP
  1012.     movl %edi,-32(%ebp)
  1013.     jmp .L165
  1014. .L166:
  1015.     movl -32(%ebp),%edi
  1016. /APP
  1017.     addl $-1,%edi
  1018. /NO_APP
  1019.     movl %edi,-32(%ebp)
  1020.     jmp .L167
  1021. .L168:
  1022.     movl -32(%ebp),%edi
  1023. /APP
  1024.     addl $-1,%edi
  1025. /NO_APP
  1026.     movl %edi,-32(%ebp)
  1027.     jmp .L169
  1028. .L139:
  1029.     leal -4(%ebx),%ebx
  1030.     leal -4(%esi),%esi
  1031.     movl -36(%ebp),%edi
  1032.     leal -4(%edi),%edx
  1033.     movl %edx,-36(%ebp)
  1034.     movl (%esi),%edi
  1035. /APP
  1036.     sbbl (%edx),%edi
  1037. /NO_APP
  1038.     movl %edi,(%ebx)
  1039. .L141:
  1040.     leal -4(%ebx),%ebx
  1041.     leal -4(%esi),%esi
  1042.     movl -36(%ebp),%edi
  1043.     leal -4(%edi),%edx
  1044.     movl %edx,-36(%ebp)
  1045.     movl (%esi),%edi
  1046. /APP
  1047.     sbbl (%edx),%edi
  1048. /NO_APP
  1049.     movl %edi,(%ebx)
  1050. .L143:
  1051.     leal -4(%ebx),%ebx
  1052.     leal -4(%esi),%esi
  1053.     movl -36(%ebp),%edi
  1054.     leal -4(%edi),%edx
  1055.     movl %edx,-36(%ebp)
  1056.     movl (%esi),%edi
  1057. /APP
  1058.     sbbl (%edx),%edi
  1059. /NO_APP
  1060.     movl %edi,(%ebx)
  1061. .L145:
  1062.     leal -4(%ebx),%ebx
  1063.     leal -4(%esi),%esi
  1064.     movl -36(%ebp),%edi
  1065.     leal -4(%edi),%edx
  1066.     movl %edx,-36(%ebp)
  1067.     movl (%esi),%edi
  1068. /APP
  1069.     sbbl (%edx),%edi
  1070. /NO_APP
  1071.     movl %edi,(%ebx)
  1072. .L147:
  1073.     leal -4(%ebx),%ebx
  1074.     leal -4(%esi),%esi
  1075.     movl -36(%ebp),%edi
  1076.     leal -4(%edi),%edx
  1077.     movl %edx,-36(%ebp)
  1078.     movl (%esi),%edi
  1079. /APP
  1080.     sbbl (%edx),%edi
  1081. /NO_APP
  1082.     movl %edi,(%ebx)
  1083. .L149:
  1084.     leal -4(%ebx),%ebx
  1085.     leal -4(%esi),%esi
  1086.     movl -36(%ebp),%edi
  1087.     leal -4(%edi),%edx
  1088.     movl %edx,-36(%ebp)
  1089.     movl (%esi),%edi
  1090. /APP
  1091.     sbbl (%edx),%edi
  1092. /NO_APP
  1093.     movl %edi,(%ebx)
  1094. .L151:
  1095.     leal -4(%ebx),%ebx
  1096.     leal -4(%esi),%esi
  1097.     movl -36(%ebp),%edi
  1098.     leal -4(%edi),%edx
  1099.     movl %edx,-36(%ebp)
  1100.     movl (%esi),%edi
  1101. /APP
  1102.     sbbl (%edx),%edi
  1103. /NO_APP
  1104.     movl %edi,(%ebx)
  1105. .L153:
  1106.     leal -4(%ebx),%ebx
  1107.     leal -4(%esi),%esi
  1108.     movl -36(%ebp),%edi
  1109.     leal -4(%edi),%edx
  1110.     movl %edx,-36(%ebp)
  1111.     movl (%esi),%edi
  1112. /APP
  1113.     sbbl (%edx),%edi
  1114. /NO_APP
  1115.     movl %edi,(%ebx)
  1116. .L155:
  1117.     leal -4(%ebx),%ebx
  1118.     leal -4(%esi),%esi
  1119.     movl -36(%ebp),%edi
  1120.     leal -4(%edi),%edx
  1121.     movl %edx,-36(%ebp)
  1122.     movl (%esi),%edi
  1123. /APP
  1124.     sbbl (%edx),%edi
  1125. /NO_APP
  1126.     movl %edi,(%ebx)
  1127. .L157:
  1128.     leal -4(%ebx),%ebx
  1129.     leal -4(%esi),%esi
  1130.     movl -36(%ebp),%edi
  1131.     leal -4(%edi),%edx
  1132.     movl %edx,-36(%ebp)
  1133.     movl (%esi),%edi
  1134. /APP
  1135.     sbbl (%edx),%edi
  1136. /NO_APP
  1137.     movl %edi,(%ebx)
  1138. .L159:
  1139.     leal -4(%ebx),%ebx
  1140.     leal -4(%esi),%esi
  1141.     movl -36(%ebp),%edi
  1142.     leal -4(%edi),%edx
  1143.     movl %edx,-36(%ebp)
  1144.     movl (%esi),%edi
  1145. /APP
  1146.     sbbl (%edx),%edi
  1147. /NO_APP
  1148.     movl %edi,(%ebx)
  1149. .L161:
  1150.     leal -4(%ebx),%ebx
  1151.     leal -4(%esi),%esi
  1152.     movl -36(%ebp),%edi
  1153.     leal -4(%edi),%edx
  1154.     movl %edx,-36(%ebp)
  1155.     movl (%esi),%edi
  1156. /APP
  1157.     sbbl (%edx),%edi
  1158. /NO_APP
  1159.     movl %edi,(%ebx)
  1160. .L163:
  1161.     leal -4(%ebx),%ebx
  1162.     leal -4(%esi),%esi
  1163.     movl -36(%ebp),%edi
  1164.     leal -4(%edi),%edx
  1165.     movl %edx,-36(%ebp)
  1166.     movl (%esi),%edi
  1167. /APP
  1168.     sbbl (%edx),%edi
  1169. /NO_APP
  1170.     movl %edi,(%ebx)
  1171. .L165:
  1172.     leal -4(%ebx),%ebx
  1173.     leal -4(%esi),%esi
  1174.     movl -36(%ebp),%edi
  1175.     leal -4(%edi),%edx
  1176.     movl %edx,-36(%ebp)
  1177.     movl (%esi),%edi
  1178. /APP
  1179.     sbbl (%edx),%edi
  1180. /NO_APP
  1181.     movl %edi,(%ebx)
  1182. .L167:
  1183.     leal -4(%ebx),%ebx
  1184.     leal -4(%esi),%esi
  1185.     movl -36(%ebp),%edi
  1186.     leal -4(%edi),%edx
  1187.     movl %edx,-36(%ebp)
  1188.     movl (%esi),%edi
  1189. /APP
  1190.     sbbl (%edx),%edi
  1191. /NO_APP
  1192.     movl %edi,(%ebx)
  1193. .L169:
  1194.     leal -4(%ebx),%ebx
  1195.     leal -4(%esi),%esi
  1196.     movl -36(%ebp),%edi
  1197.     leal -4(%edi),%edx
  1198.     movl %edx,-36(%ebp)
  1199.     movl (%esi),%edi
  1200. /APP
  1201.     sbbl (%edx),%edi
  1202. /NO_APP
  1203.     movl %edi,(%ebx)
  1204. /APP
  1205.     movl $0,-32(%ebp)
  1206.     adcl $0,-32(%ebp)
  1207. /NO_APP
  1208.     movl -28(%ebp),%edi
  1209.     leal -16(%edi),%edx
  1210.     movl %edx,-28(%ebp)
  1211.     testl %edx,%edx
  1212.     jg .L133
  1213.     cmpl $0,-32(%ebp)
  1214.     je .L171
  1215.     jmp .L172
  1216. .L174:
  1217.     leal -4(%ebx),%ebx
  1218.     movl $-1,(%ebx)
  1219. .L172:
  1220.     leal -4(%esi),%esi
  1221.     movl (%esi),%eax
  1222.     testl %eax,%eax
  1223.     je .L174
  1224.     movl -4(%ebp),%edi
  1225.     leal 8(%edi),%edi
  1226.     movl %edi,-36(%ebp)
  1227.     cmpl %esi,%edi
  1228.     ja .L179
  1229.     leal -4(%ebx),%ebx
  1230.     decl %eax
  1231.     movl %eax,(%ebx)
  1232.     jmp .L176
  1233. .L178:
  1234.     leal -4(%ebx),%ebx
  1235.     movl (%eax),%edi
  1236.     movl %edi,(%ebx)
  1237. .L176:
  1238.     leal -4(%esi),%esi
  1239.     movl %esi,%eax
  1240.     cmpl -36(%ebp),%esi
  1241.     jae .L178
  1242.     jmp .L179
  1243. .L171:
  1244.     movl -16(%ebp),%edi
  1245.     subl -20(%ebp),%edi
  1246.     movl %edi,-28(%ebp)
  1247.     incl -28(%ebp)
  1248.     jmp .L180
  1249. .L182:
  1250.     leal -4(%ebx),%ebx
  1251.     leal -4(%esi),%esi
  1252.     movl (%esi),%edi
  1253.     movl %edi,(%ebx)
  1254. .L180:
  1255.     decl -28(%ebp)
  1256.     jne .L182
  1257. .L179:
  1258.     movl -24(%ebp),%edi
  1259.     cmpl $0,8(%edi)
  1260.     je .L183
  1261.     movl -4(%ebp),%edx
  1262.     movl 4(%edx),%ecx
  1263.     movl %ecx,4(%edi)
  1264.     jmp .L123
  1265. .L183:
  1266.     movl -24(%ebp),%edi
  1267.     leal 12(%edi),%ebx
  1268.     cmpl $0,(%ebx)
  1269.     jne .L189
  1270. .L187:
  1271.     leal 4(%ebx),%ebx
  1272.     cmpl $0,(%ebx)
  1273.     je .L187
  1274. .L189:
  1275.     leal -8(%ebx),%ebx
  1276.     movl %ebx,%edi
  1277.     subl -24(%ebp),%edi
  1278.     movl %edi,-28(%ebp)
  1279.     jns .L188
  1280.     leal 3(%edi),%edx
  1281.     movl %edx,-28(%ebp)
  1282. .L188:
  1283.     sarl $2,-28(%ebp)
  1284.     movl -24(%ebp),%edi
  1285.     movl (%edi),%eax
  1286.     subl -28(%ebp),%eax
  1287.     movl %eax,(%ebx)
  1288.     movl %eax,4(%ebx)
  1289.     movl %ebx,-24(%ebp)
  1290.     movl 4(%ebx),%eax
  1291.     andl $16777215,%eax
  1292.     movl -8(%ebp),%edi
  1293.     sall $24,%edi
  1294.     movl %edi,-32(%ebp)
  1295.     addl %edi,%eax
  1296.     movl %eax,4(%ebx)
  1297.     movl -28(%ebp),%eax
  1298.     leal (,%eax,4),%eax
  1299.     addl %eax,avma
  1300. .L123:
  1301.     movl -24(%ebp),%eax
  1302. .L68:
  1303.     leal -48(%ebp),%esp
  1304.     popl %ebx
  1305.     popl %esi
  1306.     popl %edi
  1307.     leave
  1308.     ret
  1309.     .align 4
  1310. .globl mulss
  1311. mulss:
  1312.     pushl %ebp
  1313.     movl %esp,%ebp
  1314.     subl $4,%esp
  1315.     pushl %edi
  1316.     pushl %esi
  1317.     pushl %ebx
  1318.     movl 8(%ebp),%eax
  1319.     movl 12(%ebp),%ebx
  1320.     testl %eax,%eax
  1321.     je .L194
  1322.     testl %ebx,%ebx
  1323.     jne .L193
  1324. .L194:
  1325.     movl gzero,%eax
  1326.     jmp .L192
  1327. .L193:
  1328.     movl $1,%esi
  1329.     testl %eax,%eax
  1330.     jge .L195
  1331.     movl $-1,%esi
  1332.     negl %eax
  1333.     jns .L195
  1334.     pushl %eax
  1335.     call stoi
  1336.     pushl %eax
  1337.     pushl %ebx
  1338.     call mulsi
  1339.     jmp .L192
  1340. .L195:
  1341.     testl %ebx,%ebx
  1342.     jge .L197
  1343.     negl %esi
  1344.     negl %ebx
  1345.     jns .L197
  1346.     pushl $ABS_MOST_NEGS
  1347.     testl %esi,%esi
  1348.     jg .L200
  1349.     negl %eax
  1350. .L200:
  1351.     pushl %eax
  1352.     call mulsi
  1353.     jmp .L192
  1354. .L197:
  1355. /APP
  1356.     mull %ebx
  1357. /NO_APP
  1358.     movl %edx,%ebx
  1359.     movl %eax,%edi
  1360.     testl %ebx,%ebx
  1361.     je .L201
  1362.     pushl $4
  1363.     call cgeti
  1364.     movl %eax,%ecx
  1365.     movl %ebx,8(%ecx)
  1366.     movl %edi,12(%ecx)
  1367.     jmp .L202
  1368. .L201:
  1369.     pushl $3
  1370.     call cgeti
  1371.     movl %eax,%ecx
  1372.     movl %edi,8(%ecx)
  1373. .L202:
  1374.     movl (%ecx),%edx
  1375.     movl %edx,4(%ecx)
  1376.     movl %edx,%eax
  1377.     andl $16777215,%eax
  1378.     sall $24,%esi
  1379.     movl %esi,-4(%ebp)
  1380.     addl -4(%ebp),%eax
  1381.     movl %eax,4(%ecx)
  1382.     movl %ecx,%eax
  1383. .L192:
  1384.     leal -16(%ebp),%esp
  1385.     popl %ebx
  1386.     popl %esi
  1387.     popl %edi
  1388.     leave
  1389.     ret
  1390.     .align 4
  1391. .globl mulii
  1392. mulii:
  1393.     pushl %ebp
  1394.     movl %esp,%ebp
  1395.     subl $44,%esp
  1396.     pushl %edi
  1397.     pushl %esi
  1398.     pushl %ebx
  1399.     movl 8(%ebp),%edi
  1400.     movl 12(%ebp),%eax
  1401.     movl %eax,-4(%ebp)
  1402.     movl 4(%edi),%eax
  1403.     andl $65535,%eax
  1404.     movl %eax,-8(%ebp)
  1405.     movl -4(%ebp),%eax
  1406.     movl 4(%eax),%edx
  1407.     andl $65535,%edx
  1408.     movl %edx,-12(%ebp)
  1409.     movl 4(%edi),%esi
  1410.     sarl $24,%esi
  1411.     je .L219
  1412.     movl -4(%ebp),%eax
  1413.     movl 4(%eax),%ecx
  1414.     sarl $24,%ecx
  1415.     jne .L205
  1416. .L219:
  1417.     movl gzero,%eax
  1418.     jmp .L203
  1419. .L205:
  1420.     testl %ecx,%ecx
  1421.     jge .L206
  1422.     negl %esi
  1423. .L206:
  1424.     movl -12(%ebp),%eax
  1425.     cmpl -8(%ebp),%eax
  1426.     jge .L207
  1427.     movl %edi,-20(%ebp)
  1428.     movl -4(%ebp),%edi
  1429.     movl -20(%ebp),%eax
  1430.     movl %eax,-4(%ebp)
  1431.     movl -8(%ebp),%ebx
  1432.     movl -12(%ebp),%eax
  1433.     movl %eax,-8(%ebp)
  1434.     movl %ebx,-12(%ebp)
  1435. .L207:
  1436.     movl -8(%ebp),%eax
  1437.     movl -12(%ebp),%edx
  1438.     leal -2(%edx,%eax),%ebx
  1439.     cmpl $65535,%ebx
  1440.     jle .L208
  1441.     pushl $17
  1442.     call err
  1443.     leal 4(%esp),%esp
  1444. .L208:
  1445.     pushl %ebx
  1446.     call cgeti
  1447.     movl %eax,-20(%ebp)
  1448.     movl (%eax),%edx
  1449.     movl %edx,4(%eax)
  1450.     movl 4(%eax),%edx
  1451.     andl $16777215,%edx
  1452.     sall $24,%esi
  1453.     movl %esi,-44(%ebp)
  1454.     addl -44(%ebp),%edx
  1455.     movl %edx,4(%eax)
  1456.     movl -8(%ebp),%eax
  1457.     leal -4(%edi,%eax,4),%edx
  1458.     movl %edx,-28(%ebp)
  1459.     movl (%edx),%eax
  1460.     movl %eax,-16(%ebp)
  1461.     xorl %ecx,%ecx
  1462.     movl -12(%ebp),%edi
  1463.     decl %edi
  1464.     movl -4(%ebp),%edx
  1465.     movl -12(%ebp),%eax
  1466.     leal (%edx,%eax,4),%esi
  1467.     movl -20(%ebp),%eax
  1468.     leal (%eax,%ebx,4),%eax
  1469.     movl %eax,-24(%ebp)
  1470.     jmp .L209
  1471. .L211:
  1472.     movl -24(%ebp),%eax
  1473.     leal -4(%eax),%edx
  1474.     movl %edx,-24(%ebp)
  1475.     movl %ecx,-40(%ebp)
  1476.     leal -4(%esi),%esi
  1477.     movl -16(%ebp),%eax
  1478. /APP
  1479.     mull (%esi)
  1480. /NO_APP
  1481.     movl %edx,%ecx
  1482.     movl %eax,-44(%ebp)
  1483.     movl -40(%ebp),%eax
  1484. /APP
  1485.     addl -44(%ebp),%eax
  1486.     adcl $0,%ecx
  1487. /NO_APP
  1488.     movl %eax,-40(%ebp)
  1489.     movl -24(%ebp),%eax
  1490.     movl -40(%ebp),%edx
  1491.     movl %edx,(%eax)
  1492. .L209:
  1493.     decl %edi
  1494.     jne .L211
  1495.     movl -24(%ebp),%eax
  1496.     movl %ecx,-4(%eax)
  1497.     movl -20(%ebp),%eax
  1498.     leal (%eax,%ebx,4),%eax
  1499.     movl %eax,-24(%ebp)
  1500.     movl -4(%ebp),%edx
  1501.     movl -12(%ebp),%eax
  1502.     leal (%edx,%eax,4),%edx
  1503.     movl %edx,-32(%ebp)
  1504.     decl -12(%ebp)
  1505.     movl -8(%ebp),%eax
  1506.     leal -2(%eax),%edx
  1507.     movl %edx,-8(%ebp)
  1508.     jmp .L212
  1509. .L217:
  1510.     movl -28(%ebp),%eax
  1511.     leal -4(%eax),%edx
  1512.     movl %edx,-28(%ebp)
  1513.     movl (%edx),%eax
  1514.     movl %eax,-36(%ebp)
  1515.     movl -12(%ebp),%edi
  1516.     movl -32(%ebp),%esi
  1517.     movl -24(%ebp),%eax
  1518.     leal -4(%eax),%eax
  1519.     movl %eax,-44(%ebp)
  1520.     movl %eax,-24(%ebp)
  1521.     xorl %ebx,%ebx
  1522.     jmp .L214
  1523. .L216:
  1524.     leal -4(%esi),%esi
  1525.     movl (%esi),%eax
  1526. /APP
  1527.     mull -36(%ebp)
  1528. /NO_APP
  1529.     movl %edx,%ecx
  1530.     movl %eax,-40(%ebp)
  1531.     movl -44(%ebp),%eax
  1532.     leal -4(%eax),%edx
  1533.     movl %edx,-44(%ebp)
  1534.     movl -40(%ebp),%eax
  1535. /APP
  1536.     addl (%edx),%eax
  1537.     adcl $0,%ecx
  1538. /NO_APP
  1539.     movl %eax,-40(%ebp)
  1540. /APP
  1541.     addl %ebx,%eax
  1542.     adcl $0,%ecx
  1543. /NO_APP
  1544.     movl %eax,(%edx)
  1545.     movl %ecx,%ebx
  1546. .L214:
  1547.     decl %edi
  1548.     jne .L216
  1549.     movl -44(%ebp),%eax
  1550.     movl %ecx,-4(%eax)
  1551. .L212:
  1552.     decl -8(%ebp)
  1553.     cmpl $0,-8(%ebp)
  1554.     jg .L217
  1555.     movl -20(%ebp),%eax
  1556.     cmpl $0,8(%eax)
  1557.     jne .L218
  1558.     movl 4(%eax),%edx
  1559.     decl %edx
  1560.     movl %edx,8(%eax)
  1561.     movl (%eax),%edx
  1562.     decl %edx
  1563.     movl %edx,4(%eax)
  1564.     leal 4(%eax),%edx
  1565.     movl %edx,-20(%ebp)
  1566.     addl $4,avma
  1567. .L218:
  1568.     movl -20(%ebp),%eax
  1569. .L203:
  1570.     leal -56(%ebp),%esp
  1571.     popl %ebx
  1572.     popl %esi
  1573.     popl %edi
  1574.     leave
  1575.     ret
  1576.     .align 4
  1577. .globl confrac
  1578. confrac:
  1579.     pushl %ebp
  1580.     movl %esp,%ebp
  1581.     subl $52,%esp
  1582.     pushl %edi
  1583.     pushl %esi
  1584.     pushl %ebx
  1585.     movl 8(%ebp),%ecx
  1586.     movl (%ecx),%edi
  1587.     andl $65535,%edi
  1588.     movl %edi,-4(%ebp)
  1589.     movl 4(%ecx),%edi
  1590.     andl $16777215,%edi
  1591.     movl %edi,-40(%ebp)
  1592.     leal -8388608(%edi),%ecx
  1593.     movl %ecx,-40(%ebp)
  1594.     movl $-1,%ecx
  1595.     subl -40(%ebp),%ecx
  1596.     movl %ecx,-40(%ebp)
  1597.     movl avma,%ecx
  1598.     movl %ecx,-8(%ebp)
  1599.     movl -4(%ebp),%ecx
  1600.     leal -2(%ecx),%ecx
  1601.     movl %ecx,-16(%ebp)
  1602.     sall $5,-16(%ebp)
  1603.     movl -16(%ebp),%ecx
  1604.     movl -40(%ebp),%edi
  1605.     leal (%edi,%ecx),%edi
  1606.     movl %edi,-16(%ebp)
  1607.     leal 63(%edi),%edi
  1608.     movl %edi,-12(%ebp)
  1609.     sarl $5,-12(%ebp)
  1610.     pushl -12(%ebp)
  1611.     call cgeti
  1612.     movl %eax,-24(%ebp)
  1613.     movl -40(%ebp),%eax
  1614.     sarl $5,%eax
  1615.     xorl %ebx,%ebx
  1616.     leal 4(%esp),%esp
  1617.     cmpl %ebx,%eax
  1618.     jle .L247
  1619. .L224:
  1620.     movl -24(%ebp),%ecx
  1621.     movl $0,(%ecx,%ebx,4)
  1622.     incl %ebx
  1623.     cmpl %ebx,%eax
  1624.     jg .L224
  1625. .L247:
  1626.     andl $31,-40(%ebp)
  1627.     jne .L225
  1628.     movl $2,%esi
  1629.     cmpl -4(%ebp),%esi
  1630.     jge .L230
  1631. .L229:
  1632.     movl -24(%ebp),%ecx
  1633.     movl 8(%ebp),%edi
  1634.     movl (%edi,%esi,4),%edx
  1635.     movl %edx,(%ecx,%ebx,4)
  1636.     incl %ebx
  1637.     incl %esi
  1638.     cmpl -4(%ebp),%esi
  1639.     jl .L229
  1640.     jmp .L230
  1641. .L225:
  1642.     movl $0,-20(%ebp)
  1643.     movl $2,%esi
  1644.     cmpl -4(%ebp),%esi
  1645.     jge .L245
  1646.     movl $32,%ecx
  1647.     subl -40(%ebp),%ecx
  1648.     movl %ecx,-32(%ebp)
  1649. .L234:
  1650.     movl %ebx,%eax
  1651.     movl 8(%ebp),%ecx
  1652.     movl (%ecx,%esi,4),%edi
  1653.     movl %edi,-36(%ebp)
  1654.     incl %ebx
  1655.     movl -40(%ebp),%ecx
  1656.     shrl %cl,%edi
  1657.     movl -24(%ebp),%ecx
  1658.     addl -20(%ebp),%edi
  1659.     movl %edi,(%ecx,%eax,4)
  1660.     movl -36(%ebp),%edi
  1661.     movl -32(%ebp),%ecx
  1662.     shll %cl,%edi
  1663.     movl %edi,-20(%ebp)
  1664.     incl %esi
  1665.     cmpl -4(%ebp),%esi
  1666.     jl .L234
  1667. .L245:
  1668.     movl -12(%ebp),%ecx
  1669.     movl -24(%ebp),%edi
  1670.     movl -20(%ebp),%edx
  1671.     movl %edx,-8(%edi,%ecx,4)
  1672. .L230:
  1673.     movl -12(%ebp),%ecx
  1674.     movl -24(%ebp),%edi
  1675.     movl $0,-4(%edi,%ecx,4)
  1676.     pushl -16(%ebp)
  1677.     call __floatsidf
  1678.     leal 4(%esp),%esp
  1679.     fstpl -52(%ebp)
  1680.     pushl $1070810131
  1681.     pushl $1430739506
  1682.     pushl -48(%ebp)
  1683.     pushl -52(%ebp)
  1684.     call __muldf3
  1685.     leal 16(%esp),%esp
  1686.     fstpl -52(%ebp)
  1687.     pushl $1072693248
  1688.     pushl $0
  1689.     pushl -48(%ebp)
  1690.     pushl -52(%ebp)
  1691.     call __adddf3
  1692.     leal 16(%esp),%esp
  1693.     fstpl -52(%ebp)
  1694.     pushl -48(%ebp)
  1695.     pushl -52(%ebp)
  1696.     call __fixdfsi
  1697.     leal 8(%esp),%esp
  1698.     movl %eax,%ebx
  1699.     leal 17(%ebx),%ecx
  1700.     movl %ecx,-40(%ebp)
  1701.     pushl $9
  1702.     pushl %ecx
  1703.     call __divsi3
  1704.     leal 8(%esp),%esp
  1705.     movl %eax,-40(%ebp)
  1706.     pushl %eax
  1707.     call cgeti
  1708.     movl %eax,-28(%ebp)
  1709.     movl %ebx,(%eax)
  1710.     movl $1,%esi
  1711.     cmpl -40(%ebp),%esi
  1712.     jge .L244
  1713. .L242:
  1714.     movl $0,-44(%ebp)
  1715.     movl -12(%ebp),%ebx
  1716.     jmp .L248
  1717. .L241:
  1718.     movl -44(%ebp),%ecx
  1719.     movl %ecx,-36(%ebp)
  1720.     movl -24(%ebp),%ecx
  1721.     movl (%ecx,%ebx,4),%eax
  1722.     movl $1000000000,%edi
  1723. /APP
  1724.     mull %edi
  1725. /NO_APP
  1726.     movl %edx,-44(%ebp)
  1727.     movl -36(%ebp),%ecx
  1728. /APP
  1729.     addl %eax,%ecx
  1730.     adcl $0,-44(%ebp)
  1731. /NO_APP
  1732.     movl %ecx,%eax
  1733.     movl -24(%ebp),%ecx
  1734.     movl %eax,(%ecx,%ebx,4)
  1735. .L248:
  1736.     decl %ebx
  1737.     jns .L241
  1738.     movl -28(%ebp),%ecx
  1739.     movl -44(%ebp),%edi
  1740.     movl %edi,(%ecx,%esi,4)
  1741.     incl %esi
  1742.     cmpl -40(%ebp),%esi
  1743.     jl .L242
  1744. .L244:
  1745.     movl -8(%ebp),%ecx
  1746.     movl %ecx,avma
  1747.     movl -28(%ebp),%eax
  1748.     leal -64(%ebp),%esp
  1749.     popl %ebx
  1750.     popl %esi
  1751.     popl %edi
  1752.     leave
  1753.     ret
  1754.     .align 4
  1755. .globl divss
  1756. divss:
  1757.     pushl %ebp
  1758.     movl %esp,%ebp
  1759.     subl $4,%esp
  1760.     pushl %edi
  1761.     pushl %esi
  1762.     pushl %ebx
  1763.     movl 8(%ebp),%edi
  1764.     movl 12(%ebp),%esi
  1765.     testl %esi,%esi
  1766.     jne .L250
  1767.     pushl $23
  1768.     call err
  1769.     leal 4(%esp),%esp
  1770. .L250:
  1771.     cmpl $-2147483648,%edi
  1772.     jne .L251
  1773.     pushl %esi
  1774.     pushl %edi
  1775.     call stoi
  1776.     leal 4(%esp),%esp
  1777.     pushl %eax
  1778.     call divis
  1779.     jmp .L249
  1780. .L251:
  1781.     movl $0,hiremainder
  1782.     pushl %edi
  1783.     call abs
  1784.     movl %eax,%ebx
  1785.     pushl %esi
  1786.     call abs
  1787.     movl %eax,-4(%ebp)
  1788.     movl %ebx,%eax
  1789.     movl hiremainder,%edx
  1790. /APP
  1791.     divl -4(%ebp)
  1792. /NO_APP
  1793.     movl %edx,hiremainder
  1794.     movl %eax,%ebx
  1795.     leal 8(%esp),%esp
  1796.     movl %ebx,%ecx
  1797.     testl %esi,%esi
  1798.     jge .L252
  1799.     negl hiremainder
  1800.     negl %ecx
  1801. .L252:
  1802.     testl %edi,%edi
  1803.     jge .L253
  1804.     negl %ecx
  1805. .L253:
  1806.     pushl %ecx
  1807.     call stoi
  1808. .L249:
  1809.     leal -16(%ebp),%esp
  1810.     popl %ebx
  1811.     popl %esi
  1812.     popl %edi
  1813.     leave
  1814.     ret
  1815.     .align 4
  1816. .globl modss
  1817. modss:
  1818.     pushl %ebp
  1819.     movl %esp,%ebp
  1820.     pushl %edi
  1821.     pushl %esi
  1822.     pushl %ebx
  1823.     movl 8(%ebp),%ebx
  1824.     movl 12(%ebp),%edi
  1825.     testl %edi,%edi
  1826.     jne .L255
  1827.     pushl $38
  1828.     call err
  1829.     leal 4(%esp),%esp
  1830. .L255:
  1831.     cmpl $-2147483648,%ebx
  1832.     jne .L256
  1833.     pushl %edi
  1834.     pushl %ebx
  1835.     call stoi
  1836.     leal 4(%esp),%esp
  1837.     pushl %eax
  1838.     call modis
  1839.     jmp .L254
  1840. .L256:
  1841.     xorl %esi,%esi
  1842.     pushl %ebx
  1843.     call abs
  1844.     movl %eax,%ebx
  1845.     pushl %edi
  1846.     call abs
  1847.     movl %eax,%ecx
  1848.     movl %ebx,%eax
  1849.     movl %esi,%edx
  1850. /APP
  1851.     divl %ecx
  1852. /NO_APP
  1853.     movl %edx,%esi
  1854.     movl %eax,%ebx
  1855.     leal 8(%esp),%esp
  1856.     testl %esi,%esi
  1857.     jne .L257
  1858.     movl gzero,%eax
  1859.     jmp .L254
  1860. .L257:
  1861.     testl %esi,%esi
  1862.     jge .L258
  1863.     movl %ecx,%eax
  1864.     subl %esi,%eax
  1865.     pushl %eax
  1866.     jmp .L260
  1867. .L258:
  1868.     pushl %esi
  1869. .L260:
  1870.     call stoi
  1871.     movl %eax,%ecx
  1872.     movl %ecx,%eax
  1873. .L254:
  1874.     leal -12(%ebp),%esp
  1875.     popl %ebx
  1876.     popl %esi
  1877.     popl %edi
  1878.     leave
  1879.     ret
  1880.     .align 4
  1881. .globl resss
  1882. resss:
  1883.     pushl %ebp
  1884.     movl %esp,%ebp
  1885.     subl $4,%esp
  1886.     pushl %edi
  1887.     pushl %esi
  1888.     pushl %ebx
  1889.     movl 12(%ebp),%edi
  1890.     testl %edi,%edi
  1891.     jne .L262
  1892.     pushl $40
  1893.     call err
  1894.     leal 4(%esp),%esp
  1895. .L262:
  1896.     xorl %esi,%esi
  1897.     pushl 8(%ebp)
  1898.     call abs
  1899.     movl %eax,%ebx
  1900.     pushl %edi
  1901.     call abs
  1902.     movl %eax,-4(%ebp)
  1903.     movl %ebx,%eax
  1904.     movl %esi,%edx
  1905. /APP
  1906.     divl -4(%ebp)
  1907. /NO_APP
  1908.     movl %edx,%esi
  1909.     movl %eax,%ebx
  1910.     leal 8(%esp),%esp
  1911.     testl %edi,%edi
  1912.     jge .L263
  1913.     movl %esi,%eax
  1914.     negl %eax
  1915.     pushl %eax
  1916.     jmp .L265
  1917. .L263:
  1918.     pushl %esi
  1919. .L265:
  1920.     call stoi
  1921.     movl %eax,%ecx
  1922.     movl %ecx,%eax
  1923.     leal -16(%ebp),%esp
  1924.     popl %ebx
  1925.     popl %esi
  1926.     popl %edi
  1927.     leave
  1928.     ret
  1929.     .align 4
  1930. .globl divsi
  1931. divsi:
  1932.     pushl %ebp
  1933.     movl %esp,%ebp
  1934.     pushl %edi
  1935.     pushl %esi
  1936.     pushl %ebx
  1937.     movl 8(%ebp),%edi
  1938.     movl 12(%ebp),%ebx
  1939.     movl 4(%ebx),%eax
  1940.     sarl $24,%eax
  1941.     movl 4(%ebx),%esi
  1942.     andl $65535,%esi
  1943.     testl %eax,%eax
  1944.     jne .L267
  1945.     pushl $24
  1946.     call err
  1947.     leal 4(%esp),%esp
  1948. .L267:
  1949.     testl %edi,%edi
  1950.     je .L269
  1951.     cmpl $3,%esi
  1952.     jg .L269
  1953.     cmpl $0,8(%ebx)
  1954.     jge .L268
  1955. .L269:
  1956.     movl %edi,hiremainder
  1957.     movl gzero,%eax
  1958.     jmp .L266
  1959. .L268:
  1960.     cmpl $-2147483648,%edi
  1961.     jne .L270
  1962.     pushl $0
  1963.     pushl %ebx
  1964.     pushl %edi
  1965.     call stoi
  1966.     leal 4(%esp),%esp
  1967.     pushl %eax
  1968.     call dvmdii
  1969.     jmp .L266
  1970. .L270:
  1971.     movl $0,hiremainder
  1972.     pushl %edi
  1973.     call abs
  1974.     movl hiremainder,%edx
  1975. /APP
  1976.     divl 8(%ebx)
  1977. /NO_APP
  1978.     movl %edx,hiremainder
  1979.     leal 4(%esp),%esp
  1980.     movl %eax,%ecx
  1981.     movl 4(%ebx),%eax
  1982.     sarl $24,%eax
  1983.     jns .L271
  1984.     negl hiremainder
  1985.     negl %ecx
  1986. .L271:
  1987.     testl %edi,%edi
  1988.     jge .L272
  1989.     negl %ecx
  1990. .L272:
  1991.     pushl %ecx
  1992.     call stoi
  1993. .L266:
  1994.     leal -12(%ebp),%esp
  1995.     popl %ebx
  1996.     popl %esi
  1997.     popl %edi
  1998.     leave
  1999.     ret
  2000.     .align 4
  2001. .globl divis
  2002. divis:
  2003.     pushl %ebp
  2004.     movl %esp,%ebp
  2005.     subl $20,%esp
  2006.     pushl %edi
  2007.     pushl %esi
  2008.     pushl %ebx
  2009.     movl 12(%ebp),%ebx
  2010.     movl 8(%ebp),%edx
  2011.     movl 4(%edx),%edi
  2012.     sarl $24,%edi
  2013.     movl %edi,-4(%ebp)
  2014.     movl 4(%edx),%edi
  2015.     andl $65535,%edi
  2016.     movl %edi,-8(%ebp)
  2017.     testl %ebx,%ebx
  2018.     jne .L274
  2019.     pushl $26
  2020.     call err
  2021.     leal 4(%esp),%esp
  2022. .L274:
  2023.     cmpl $0,-4(%ebp)
  2024.     jne .L275
  2025.     movl $0,hiremainder
  2026.     movl gzero,%eax
  2027.     jmp .L273
  2028. .L275:
  2029.     testl %ebx,%ebx
  2030.     jge .L276
  2031.     negl -4(%ebp)
  2032.     negl %ebx
  2033.     jns .L276
  2034.     pushl $0
  2035.     pushl %ebx
  2036.     call stoi
  2037.     leal 4(%esp),%esp
  2038.     pushl %eax
  2039.     pushl 8(%ebp)
  2040.     call dvmdii
  2041.     jmp .L273
  2042. .L276:
  2043.     movl 8(%ebp),%edx
  2044.     cmpl 8(%edx),%ebx
  2045.     jbe .L278
  2046.     cmpl $3,-8(%ebp)
  2047.     jne .L279
  2048.     pushl 8(%ebp)
  2049.     call itos
  2050.     movl %eax,hiremainder
  2051.     movl gzero,%eax
  2052.     jmp .L273
  2053. .L279:
  2054.     movl -8(%ebp),%eax
  2055.     decl %eax
  2056.     pushl %eax
  2057.     call cgeti
  2058.     movl %eax,-20(%ebp)
  2059.     movl $1,-12(%ebp)
  2060.     movl 8(%ebp),%edx
  2061.     movl 8(%edx),%esi
  2062.     jmp .L281
  2063. .L278:
  2064.     pushl -8(%ebp)
  2065.     call cgeti
  2066.     movl %eax,-20(%ebp)
  2067.     movl $0,-12(%ebp)
  2068.     xorl %esi,%esi
  2069. .L281:
  2070.     movl -12(%ebp),%edx
  2071.     leal 2(%edx),%ecx
  2072.     cmpl -8(%ebp),%ecx
  2073.     jge .L288
  2074. .L285:
  2075.     movl %ecx,%edx
  2076.     subl -12(%ebp),%edx
  2077.     movl %edx,-16(%ebp)
  2078.     movl 8(%ebp),%edi
  2079.     movl (%edi,%ecx,4),%eax
  2080.     movl %esi,%edx
  2081. /APP
  2082.     divl %ebx
  2083. /NO_APP
  2084.     movl %edx,%esi
  2085.     movl -20(%ebp),%edi
  2086.     movl -16(%ebp),%edx
  2087.     movl %eax,(%edi,%edx,4)
  2088.     incl %ecx
  2089.     cmpl -8(%ebp),%ecx
  2090.     jl .L285
  2091. .L288:
  2092.     movl -20(%ebp),%edx
  2093.     movl (%edx),%edi
  2094.     movl %edi,4(%edx)
  2095.     movl 4(%edx),%eax
  2096.     andl $16777215,%eax
  2097.     movl -4(%ebp),%edx
  2098.     sall $24,%edx
  2099.     movl %edx,-16(%ebp)
  2100.     movl -20(%ebp),%edx
  2101.     addl -16(%ebp),%eax
  2102.     movl %eax,4(%edx)
  2103.     cmpl $0,-4(%ebp)
  2104.     jge .L286
  2105.     movl %esi,%eax
  2106.     negl %eax
  2107.     jmp .L287
  2108. .L286:
  2109.     movl %esi,%eax
  2110. .L287:
  2111.     movl %eax,hiremainder
  2112.     movl -20(%ebp),%eax
  2113. .L273:
  2114.     leal -32(%ebp),%esp
  2115.     popl %ebx
  2116.     popl %esi
  2117.     popl %edi
  2118.     leave
  2119.     ret
  2120.     .align 4
  2121. .globl dvmdii
  2122. dvmdii:
  2123.     pushl %ebp
  2124.     movl %esp,%ebp
  2125.     subl $104,%esp
  2126.     pushl %edi
  2127.     pushl %esi
  2128.     pushl %ebx
  2129.     movl 8(%ebp),%edx
  2130.     movl 4(%edx),%ecx
  2131.     sarl $24,%ecx
  2132.     movl %ecx,-32(%ebp)
  2133.     movl 12(%ebp),%edx
  2134.     movl 4(%edx),%ecx
  2135.     sarl $24,%ecx
  2136.     movl %ecx,-36(%ebp)
  2137.     jne .L290
  2138.     pushl $36
  2139.     call err
  2140.     leal 4(%esp),%esp
  2141. .L290:
  2142.     cmpl $0,-32(%ebp)
  2143.     jne .L291
  2144.     cmpl $-1,16(%ebp)
  2145.     je .L393
  2146.     cmpl $0,16(%ebp)
  2147.     je .L393
  2148.     movl 16(%ebp),%edx
  2149.     movl gzero,%ecx
  2150.     movl %ecx,(%edx)
  2151. .L393:
  2152.     movl gzero,%eax
  2153.     jmp .L289
  2154. .L291:
  2155.     movl 8(%ebp),%edx
  2156.     movl 4(%edx),%ecx
  2157.     andl $65535,%ecx
  2158.     movl %ecx,-8(%ebp)
  2159.     movl 12(%ebp),%edx
  2160.     movl 4(%edx),%ecx
  2161.     andl $65535,%ecx
  2162.     movl %ecx,-12(%ebp)
  2163.     movl -8(%ebp),%edx
  2164.     subl %ecx,%edx
  2165.     movl %edx,-16(%ebp)
  2166.     jns .L294
  2167.     cmpl $-1,16(%ebp)
  2168.     jne .L295
  2169.     pushl 8(%ebp)
  2170.     call icopy
  2171.     jmp .L289
  2172. .L295:
  2173.     cmpl $0,16(%ebp)
  2174.     je .L393
  2175.     pushl 8(%ebp)
  2176.     call icopy
  2177.     movl 16(%ebp),%edx
  2178.     movl %eax,(%edx)
  2179.     jmp .L393
  2180. .L294:
  2181.     movl avma,%edx
  2182.     movl %edx,-4(%ebp)
  2183.     cmpl $0,-32(%ebp)
  2184.     jge .L297
  2185.     negl -36(%ebp)
  2186. .L297:
  2187.     cmpl $3,-12(%ebp)
  2188.     jne .L298
  2189.     movl 12(%ebp),%edx
  2190.     movl 8(%edx),%ecx
  2191.     movl %ecx,-48(%ebp)
  2192.     movl 8(%ebp),%edx
  2193.     leal 8(%edx),%edx
  2194.     movl %edx,-104(%ebp)
  2195.     movl 8(%ebp),%edx
  2196.     movl 8(%edx),%ecx
  2197.     cmpl -48(%ebp),%ecx
  2198.     jae .L299
  2199.     movl -8(%ebp),%edx
  2200.     decl %edx
  2201.     movl %edx,-100(%ebp)
  2202.     movl -104(%ebp),%edx
  2203.     movl (%edx),%ecx
  2204.     movl %ecx,-96(%ebp)
  2205.     leal 4(%edx),%ecx
  2206.     movl %ecx,-104(%ebp)
  2207.     jmp .L300
  2208. .L299:
  2209.     movl -8(%ebp),%edx
  2210.     movl %edx,-100(%ebp)
  2211.     movl $0,-96(%ebp)
  2212. .L300:
  2213.     pushl -100(%ebp)
  2214.     call cgeti
  2215.     movl %eax,-56(%ebp)
  2216.     movl -100(%ebp),%edx
  2217.     decl %edx
  2218.     movl %edx,-20(%ebp)
  2219.     movl %eax,%edx
  2220.     leal 8(%edx),%edx
  2221.     movl %edx,-72(%ebp)
  2222.     leal 4(%esp),%esp
  2223.     jmp .L301
  2224. .L303:
  2225.     movl -104(%ebp),%edx
  2226.     movl (%edx),%eax
  2227.     leal 4(%edx),%ecx
  2228.     movl %ecx,-104(%ebp)
  2229.     movl -96(%ebp),%edx
  2230. /APP
  2231.     divl -48(%ebp)
  2232. /NO_APP
  2233.     movl %edx,-96(%ebp)
  2234.     movl -72(%ebp),%edx
  2235.     movl %eax,(%edx)
  2236.     leal 4(%edx),%ecx
  2237.     movl %ecx,-72(%ebp)
  2238. .L301:
  2239.     decl -20(%ebp)
  2240.     jne .L303
  2241.     cmpl $-1,16(%ebp)
  2242.     jne .L304
  2243.     movl -4(%ebp),%edx
  2244.     movl %edx,avma
  2245.     cmpl $0,-96(%ebp)
  2246.     je .L393
  2247.     pushl $3
  2248.     call cgeti
  2249.     movl %eax,-60(%ebp)
  2250.     movl -36(%ebp),%eax
  2251.     sall $24,%eax
  2252.     movl -60(%ebp),%edx
  2253.     addl $3,%eax
  2254.     movl %eax,4(%edx)
  2255.     movl -96(%ebp),%ecx
  2256.     movl %ecx,8(%edx)
  2257.     movl -60(%ebp),%eax
  2258.     jmp .L289
  2259. .L304:
  2260.     cmpl $2,-100(%ebp)
  2261.     je .L306
  2262.     movl -56(%ebp),%edx
  2263.     movl (%edx),%ecx
  2264.     movl %ecx,4(%edx)
  2265.     movl 4(%edx),%eax
  2266.     andl $16777215,%eax
  2267.     movl -36(%ebp),%edx
  2268.     sall $24,%edx
  2269.     movl %edx,-88(%ebp)
  2270.     movl -56(%ebp),%edx
  2271.     addl -88(%ebp),%eax
  2272.     movl %eax,4(%edx)
  2273.     jmp .L307
  2274. .L306:
  2275.     movl -4(%ebp),%edx
  2276.     movl %edx,avma
  2277.     movl gzero,%edx
  2278.     movl %edx,-56(%ebp)
  2279. .L307:
  2280.     cmpl $0,16(%ebp)
  2281.     jne .L308
  2282.     movl -56(%ebp),%eax
  2283.     jmp .L289
  2284. .L308:
  2285.     cmpl $0,-96(%ebp)
  2286.     jne .L309
  2287.     movl 16(%ebp),%edx
  2288.     movl gzero,%ecx
  2289.     jmp .L389
  2290. .L309:
  2291.     pushl $3
  2292.     call cgeti
  2293.     movl %eax,-60(%ebp)
  2294.     movl -32(%ebp),%eax
  2295.     sall $24,%eax
  2296.     movl -60(%ebp),%edx
  2297.     addl $3,%eax
  2298.     movl %eax,4(%edx)
  2299.     movl -96(%ebp),%ecx
  2300.     movl %ecx,8(%edx)
  2301.     movl 16(%ebp),%edx
  2302.     movl -60(%ebp),%ecx
  2303. .L389:
  2304.     movl %ecx,(%edx)
  2305.     movl -56(%ebp),%eax
  2306.     jmp .L289
  2307. .L298:
  2308.     pushl -8(%ebp)
  2309.     call cgeti
  2310.     movl %eax,-56(%ebp)
  2311.     movl 12(%ebp),%edx
  2312.     pushl 8(%edx)
  2313.     call bfffo
  2314.     movl %eax,-24(%ebp)
  2315.     leal 8(%esp),%esp
  2316.     testl %eax,%eax
  2317.     je .L312
  2318.     movl 12(%ebp),%edx
  2319.     leal 8(%edx),%edx
  2320.     movl %edx,-104(%ebp)
  2321.     pushl -12(%ebp)
  2322.     call cgeti
  2323.     movl %eax,-60(%ebp)
  2324.     movl -104(%ebp),%edx
  2325.     movl (%edx),%ecx
  2326.     movl %ecx,-88(%ebp)
  2327.     leal 4(%edx),%ecx
  2328.     movl %ecx,-104(%ebp)
  2329.     movl -88(%ebp),%edx
  2330.     movl -24(%ebp),%ecx
  2331.     shll %cl,%edx
  2332.     movl %edx,-28(%ebp)
  2333.     leal 8(%eax),%eax
  2334.     movl -12(%ebp),%edx
  2335.     leal -2(%edx),%edx
  2336.     movl %edx,-20(%ebp)
  2337.     leal 4(%esp),%esp
  2338.     movl $32,%edx
  2339.     subl %ecx,%edx
  2340.     movl %edx,-92(%ebp)
  2341.     jmp .L313
  2342. .L315:
  2343.     movl -104(%ebp),%edx
  2344.     movl (%edx),%ecx
  2345.     movl %ecx,-88(%ebp)
  2346.     leal 4(%edx),%ecx
  2347.     movl %ecx,-104(%ebp)
  2348.     movl -88(%ebp),%edx
  2349.     movl -92(%ebp),%ecx
  2350.     shrl %cl,%edx
  2351.     movl %edx,-96(%ebp)
  2352.     addl -28(%ebp),%edx
  2353.     movl %edx,(%eax)
  2354.     leal 4(%eax),%eax
  2355.     movl -88(%ebp),%edx
  2356.     movl -24(%ebp),%ecx
  2357.     shll %cl,%edx
  2358.     movl %edx,-28(%ebp)
  2359. .L313:
  2360.     decl -20(%ebp)
  2361.     jne .L315
  2362.     movl -28(%ebp),%edx
  2363.     movl %edx,(%eax)
  2364.     movl $0,-28(%ebp)
  2365.     movl 8(%ebp),%edx
  2366.     leal 8(%edx),%edx
  2367.     movl %edx,-104(%ebp)
  2368.     movl -56(%ebp),%edx
  2369.     leal 4(%edx),%edx
  2370.     movl %edx,-72(%ebp)
  2371.     movl -8(%ebp),%edx
  2372.     decl %edx
  2373.     movl %edx,-20(%ebp)
  2374.     movl $32,%eax
  2375.     subl -24(%ebp),%eax
  2376.     jmp .L316
  2377. .L318:
  2378.     movl -104(%ebp),%edx
  2379.     movl (%edx),%ecx
  2380.     movl %ecx,-88(%ebp)
  2381.     leal 4(%edx),%ecx
  2382.     movl %ecx,-104(%ebp)
  2383.     movl -88(%ebp),%edx
  2384.     movl %eax,%ecx
  2385.     shrl %cl,%edx
  2386.     movl %edx,-96(%ebp)
  2387.     movl -72(%ebp),%edx
  2388.     movl -96(%ebp),%ecx
  2389.     addl -28(%ebp),%ecx
  2390.     movl %ecx,(%edx)
  2391.     leal 4(%edx),%ecx
  2392.     movl %ecx,-72(%ebp)
  2393.     movl -88(%ebp),%edx
  2394.     movl -24(%ebp),%ecx
  2395.     shll %cl,%edx
  2396.     movl %edx,-28(%ebp)
  2397. .L316:
  2398.     decl -20(%ebp)
  2399.     jne .L318
  2400.     movl -72(%ebp),%edx
  2401.     movl -28(%ebp),%ecx
  2402.     movl %ecx,(%edx)
  2403.     jmp .L319
  2404. .L312:
  2405.     movl 8(%ebp),%edx
  2406.     leal 8(%edx),%edx
  2407.     movl %edx,-104(%ebp)
  2408.     movl -56(%ebp),%edx
  2409.     leal 4(%edx),%edx
  2410.     movl %edx,-72(%ebp)
  2411.     movl $0,(%edx)
  2412.     leal 4(%edx),%ecx
  2413.     movl %ecx,-72(%ebp)
  2414.     movl -8(%ebp),%edx
  2415.     decl %edx
  2416.     movl %edx,-100(%ebp)
  2417.     jmp .L320
  2418. .L322:
  2419.     movl -72(%ebp),%edx
  2420.     movl -104(%ebp),%ecx
  2421.     movl (%ecx),%esi
  2422.     movl %esi,(%edx)
  2423.     leal 4(%ecx),%edx
  2424.     movl %edx,-104(%ebp)
  2425.     movl -72(%ebp),%edx
  2426.     leal 4(%edx),%ecx
  2427.     movl %ecx,-72(%ebp)
  2428. .L320:
  2429.     decl -100(%ebp)
  2430.     jne .L322
  2431.     movl 12(%ebp),%edx
  2432.     movl %edx,-60(%ebp)
  2433. .L319:
  2434.     movl -60(%ebp),%edx
  2435.     movl 8(%edx),%ecx
  2436.     movl %ecx,-48(%ebp)
  2437.     movl 12(%edx),%ecx
  2438.     movl %ecx,-40(%ebp)
  2439.     movl -56(%ebp),%edx
  2440.     leal 4(%edx),%edx
  2441.     movl %edx,-72(%ebp)
  2442.     movl -16(%ebp),%edx
  2443.     leal 2(%edx),%edx
  2444.     movl %edx,-20(%ebp)
  2445.     movl -12(%ebp),%edx
  2446.     leal (,%edx,4),%edx
  2447.     movl %edx,-80(%ebp)
  2448.     jmp .L323
  2449. .L352:
  2450.     movl -72(%ebp),%edx
  2451.     movl (%edx),%eax
  2452.     leal 4(%edx),%ecx
  2453.     movl %ecx,-72(%ebp)
  2454.     cmpl -48(%ebp),%eax
  2455.     jne .L325
  2456.     movl $-1,-52(%ebp)
  2457.     movl -48(%ebp),%edx
  2458.     movl %edx,-88(%ebp)
  2459.     addl (%ecx),%edx
  2460.     movl %edx,-92(%ebp)
  2461.     movl -88(%ebp),%edx
  2462.     cmpl -92(%ebp),%edx
  2463.     jbe .L326
  2464.     movl $1,%eax
  2465.     jmp .L327
  2466. .L326:
  2467.     xorl %eax,%eax
  2468. .L327:
  2469.     movl -92(%ebp),%edx
  2470.     jmp .L390
  2471. .L325:
  2472.     movl -72(%ebp),%ecx
  2473.     movl (%ecx),%eax
  2474.     movl -4(%ecx),%edx
  2475. /APP
  2476.     divl -48(%ebp)
  2477. /NO_APP
  2478.     movl %edx,-96(%ebp)
  2479.     movl %eax,-52(%ebp)
  2480.     xorl %eax,%eax
  2481. .L390:
  2482.     movl %edx,-28(%ebp)
  2483.     testl %eax,%eax
  2484.     jne .L329
  2485.     movl -52(%ebp),%eax
  2486. /APP
  2487.     mull -40(%ebp)
  2488. /NO_APP
  2489.     movl %edx,-96(%ebp)
  2490.     movl %eax,-88(%ebp)
  2491.     movl -72(%ebp),%edx
  2492.     movl 4(%edx),%eax
  2493.     movl -88(%ebp),%edx
  2494.     subl %eax,%edx
  2495.     movl %edx,-92(%ebp)
  2496.     cmpl -88(%ebp),%eax
  2497.     ja .L330
  2498.     xorl %eax,%eax
  2499.     jmp .L331
  2500. .L330:
  2501.     movl $1,%eax
  2502. .L331:
  2503.     movl -92(%ebp),%edx
  2504.     movl %edx,-44(%ebp)
  2505.     movl -28(%ebp),%edx
  2506.     leal (%eax,%edx),%ecx
  2507.     movl %ecx,-28(%ebp)
  2508.     xorl %eax,%eax
  2509.     cmpl -96(%ebp),%ecx
  2510.     jae .L332
  2511.     movl $1,%eax
  2512. .L332:
  2513.     movl %eax,-100(%ebp)
  2514.     movl -96(%ebp),%edx
  2515.     subl -28(%ebp),%edx
  2516.     movl %edx,-92(%ebp)
  2517.     movl -28(%ebp),%edx
  2518.     jmp .L341
  2519. .L342:
  2520.     decl -52(%ebp)
  2521.     movl -44(%ebp),%edx
  2522.     movl %edx,-88(%ebp)
  2523.     movl -40(%ebp),%eax
  2524.     subl %eax,%edx
  2525.     movl %edx,-92(%ebp)
  2526.     cmpl -88(%ebp),%eax
  2527.     ja .L337
  2528.     xorl %eax,%eax
  2529.     jmp .L338
  2530. .L337:
  2531.     movl $1,%eax
  2532. .L338:
  2533.     movl -92(%ebp),%edx
  2534.     movl %edx,-44(%ebp)
  2535.     subl %eax,-104(%ebp)
  2536.     xorl %eax,%eax
  2537.     movl -48(%ebp),%edx
  2538.     cmpl -104(%ebp),%edx
  2539.     jae .L339
  2540.     movl $1,%eax
  2541. .L339:
  2542.     movl %eax,-100(%ebp)
  2543.     movl -104(%ebp),%edx
  2544.     movl %edx,-88(%ebp)
  2545.     movl -48(%ebp),%eax
  2546.     subl %eax,%edx
  2547.     movl %edx,-92(%ebp)
  2548. .L341:
  2549.     movl -92(%ebp),%edx
  2550.     movl %edx,-104(%ebp)
  2551.     cmpl $0,-100(%ebp)
  2552.     jne .L342
  2553. .L329:
  2554.     movl $0,-96(%ebp)
  2555.     movl -12(%ebp),%edx
  2556.     decl %edx
  2557.     movl %edx,-100(%ebp)
  2558.     movl -72(%ebp),%edx
  2559.     movl -80(%ebp),%ecx
  2560.     leal -8(%ecx,%edx),%ecx
  2561.     movl %ecx,-104(%ebp)
  2562.     movl -60(%ebp),%edx
  2563.     movl -80(%ebp),%ecx
  2564.     leal (%ecx,%edx),%ecx
  2565.     movl %ecx,-76(%ebp)
  2566.     jmp .L343
  2567. .L347:
  2568.     movl -96(%ebp),%edx
  2569.     movl %edx,-88(%ebp)
  2570.     movl -76(%ebp),%edx
  2571.     leal -4(%edx),%ecx
  2572.     movl %ecx,-76(%ebp)
  2573.     movl -52(%ebp),%eax
  2574. /APP
  2575.     mull (%ecx)
  2576. /NO_APP
  2577.     movl %edx,-96(%ebp)
  2578.     movl %eax,-92(%ebp)
  2579.     movl -88(%ebp),%eax
  2580. /APP
  2581.     addl -92(%ebp),%eax
  2582.     adcl $0,-96(%ebp)
  2583. /NO_APP
  2584.     movl -104(%ebp),%edx
  2585.     leal -4(%edx),%ecx
  2586.     movl %ecx,-104(%ebp)
  2587.     movl %ecx,-84(%ebp)
  2588.     movl (%ecx),%edx
  2589.     movl %edx,-88(%ebp)
  2590.     subl %eax,%edx
  2591.     movl %edx,-92(%ebp)
  2592.     cmpl -88(%ebp),%eax
  2593.     ja .L345
  2594.     xorl %eax,%eax
  2595.     jmp .L346
  2596. .L345:
  2597.     movl $1,%eax
  2598. .L346:
  2599.     movl -84(%ebp),%edx
  2600.     movl -92(%ebp),%ecx
  2601.     movl %ecx,(%edx)
  2602.     movl -96(%ebp),%edx
  2603.     leal (%eax,%edx),%ecx
  2604.     movl %ecx,-96(%ebp)
  2605. .L343:
  2606.     decl -100(%ebp)
  2607.     jne .L347
  2608.     movl -72(%ebp),%edx
  2609.     movl -96(%ebp),%ecx
  2610.     cmpl -4(%edx),%ecx
  2611.     jbe .L348
  2612.     xorl %eax,%eax
  2613.     decl -52(%ebp)
  2614.     movl -12(%ebp),%edx
  2615.     decl %edx
  2616.     movl %edx,-100(%ebp)
  2617.     movl -72(%ebp),%edx
  2618.     movl -80(%ebp),%ecx
  2619.     leal -8(%ecx,%edx),%ecx
  2620.     movl %ecx,-104(%ebp)
  2621.     movl -60(%ebp),%edx
  2622.     movl -80(%ebp),%ecx
  2623.     leal (%ecx,%edx),%ecx
  2624.     movl %ecx,-76(%ebp)
  2625.     jmp .L349
  2626. .L351:
  2627.     movl -104(%ebp),%edx
  2628.     leal -4(%edx),%ecx
  2629.     movl %ecx,-104(%ebp)
  2630. /APP
  2631.     addl $-1,%eax
  2632. /NO_APP
  2633.     movl -76(%ebp),%edx
  2634.     leal -4(%edx),%ecx
  2635.     movl %ecx,-76(%ebp)
  2636.     movl -104(%ebp),%edx
  2637.     movl (%ecx),%esi
  2638. /APP
  2639.     adcl %esi,(%edx)
  2640.     movl $0,%eax
  2641.     adcl $0,%eax
  2642. /NO_APP
  2643. .L349:
  2644.     decl -100(%ebp)
  2645.     jne .L351
  2646. .L348:
  2647.     movl -72(%ebp),%edx
  2648.     movl -52(%ebp),%ecx
  2649.     movl %ecx,-4(%edx)
  2650. .L323:
  2651.     decl -20(%ebp)
  2652.     jne .L352
  2653.     movl avma,%edx
  2654.     movl %edx,-96(%ebp)
  2655.     cmpl $-1,16(%ebp)
  2656.     je .L353
  2657.     movl -16(%ebp),%edx
  2658.     leal 2(%edx),%edx
  2659.     movl %edx,-104(%ebp)
  2660.     movl -56(%ebp),%ecx
  2661.     leal (%ecx,%edx,4),%ecx
  2662.     movl %ecx,-72(%ebp)
  2663.     movl -56(%ebp),%edx
  2664.     cmpl $0,4(%edx)
  2665.     je .L354
  2666.     incl -104(%ebp)
  2667.     jmp .L355
  2668. .L354:
  2669.     cmpl $0,-16(%ebp)
  2670.     jne .L355
  2671.     movl $0,-36(%ebp)
  2672. .L355:
  2673.     pushl -104(%ebp)
  2674.     call cgeti
  2675.     movl %eax,-64(%ebp)
  2676.     movl -104(%ebp),%edx
  2677.     leal (%eax,%edx,4),%eax
  2678.     decl %edx
  2679.     movl %edx,-100(%ebp)
  2680.     leal 4(%esp),%esp
  2681.     jmp .L357
  2682. .L359:
  2683.     leal -4(%eax),%eax
  2684.     movl -72(%ebp),%edx
  2685.     leal -4(%edx),%ecx
  2686.     movl %ecx,-72(%ebp)
  2687.     movl (%ecx),%edx
  2688.     movl %edx,(%eax)
  2689. .L357:
  2690.     decl -100(%ebp)
  2691.     jne .L359
  2692.     cmpl $2,-104(%ebp)
  2693.     ja .L360
  2694.     movl -64(%ebp),%edx
  2695.     movl $2,4(%edx)
  2696.     jmp .L353
  2697. .L360:
  2698.     movl -64(%ebp),%edx
  2699.     movl (%edx),%ecx
  2700.     movl %ecx,4(%edx)
  2701.     movl 4(%edx),%eax
  2702.     andl $16777215,%eax
  2703.     movl -36(%ebp),%edx
  2704.     sall $24,%edx
  2705.     movl %edx,-88(%ebp)
  2706.     movl -64(%ebp),%edx
  2707.     addl -88(%ebp),%eax
  2708.     movl %eax,4(%edx)
  2709. .L353:
  2710.     cmpl $0,16(%ebp)
  2711.     je .L362
  2712.     movl -16(%ebp),%edx
  2713.     leal 2(%edx),%edx
  2714.     movl %edx,-100(%ebp)
  2715.     jmp .L391
  2716. .L366:
  2717.     movl -56(%ebp),%ecx
  2718.     movl -100(%ebp),%edx
  2719.     cmpl $0,(%ecx,%edx,4)
  2720.     jne .L364
  2721.     incl -100(%ebp)
  2722. .L391:
  2723.     movl -8(%ebp),%edx
  2724.     cmpl -100(%ebp),%edx
  2725.     jg .L366
  2726. .L364:
  2727.     movl -8(%ebp),%edx
  2728.     cmpl -100(%ebp),%edx
  2729.     jne .L367
  2730.     pushl gzero
  2731.     call icopy
  2732.     movl %eax,-68(%ebp)
  2733.     leal 4(%esp),%esp
  2734.     jmp .L362
  2735. .L367:
  2736.     movl -8(%ebp),%eax
  2737.     subl -100(%ebp),%eax
  2738.     leal 2(%eax),%eax
  2739.     pushl %eax
  2740.     call cgeti
  2741.     movl %eax,-68(%ebp)
  2742.     movl (%eax),%edx
  2743.     movl %edx,4(%eax)
  2744.     leal 4(%esp),%esp
  2745.     cmpl $0,-24(%ebp)
  2746.     jne .L369
  2747.     movl $2,-20(%ebp)
  2748.     movl -8(%ebp),%edx
  2749.     cmpl -100(%ebp),%edx
  2750.     jle .L374
  2751. .L373:
  2752.     movl -68(%ebp),%edi
  2753.     movl -20(%ebp),%edx
  2754.     movl -56(%ebp),%esi
  2755.     movl -100(%ebp),%ecx
  2756.     movl (%esi,%ecx,4),%ebx
  2757.     movl %ebx,(%edi,%edx,4)
  2758.     incl -100(%ebp)
  2759.     incl -20(%ebp)
  2760.     movl -8(%ebp),%edx
  2761.     cmpl -100(%ebp),%edx
  2762.     jg .L373
  2763.     jmp .L374
  2764. .L369:
  2765.     movl -56(%ebp),%ecx
  2766.     movl -100(%ebp),%edx
  2767.     movl (%ecx,%edx,4),%esi
  2768.     movl %esi,-88(%ebp)
  2769.     incl -100(%ebp)
  2770.     movl $32,%edx
  2771.     subl -24(%ebp),%edx
  2772.     movl %edx,-92(%ebp)
  2773.     movl %esi,%eax
  2774.     movl -24(%ebp),%ecx
  2775.     shrl %cl,%eax
  2776.     movl %esi,%edx
  2777.     movl -92(%ebp),%ecx
  2778.     shll %cl,%edx
  2779.     movl %edx,-28(%ebp)
  2780.     testl %eax,%eax
  2781.     je .L375
  2782.     movl -68(%ebp),%edx
  2783.     movl %eax,8(%edx)
  2784.     movl $1,%eax
  2785.     jmp .L376
  2786. .L375:
  2787.     movl -68(%ebp),%edx
  2788.     movl (%edx),%ecx
  2789.     decl %ecx
  2790.     movl %ecx,4(%edx)
  2791.     leal 4(%edx),%ecx
  2792.     movl %ecx,-68(%ebp)
  2793.     addl $4,avma
  2794.     movl (%ecx),%edx
  2795.     movl %edx,4(%ecx)
  2796.     xorl %eax,%eax
  2797. .L376:
  2798.     leal 2(%eax),%edx
  2799.     movl %edx,-20(%ebp)
  2800.     movl -8(%ebp),%edx
  2801.     cmpl -100(%ebp),%edx
  2802.     jle .L374
  2803.     movl $32,%edx
  2804.     subl -24(%ebp),%edx
  2805.     movl %edx,-104(%ebp)
  2806. .L380:
  2807.     movl -56(%ebp),%ecx
  2808.     movl -100(%ebp),%edx
  2809.     movl (%ecx,%edx,4),%esi
  2810.     movl %esi,-88(%ebp)
  2811.     movl %esi,%eax
  2812.     movl -24(%ebp),%ecx
  2813.     shrl %cl,%eax
  2814.     movl -68(%ebp),%ecx
  2815.     movl -20(%ebp),%edx
  2816.     addl -28(%ebp),%eax
  2817.     movl %eax,(%ecx,%edx,4)
  2818.     movl %esi,%edx
  2819.     movl -104(%ebp),%ecx
  2820.     shll %cl,%edx
  2821.     movl %edx,-28(%ebp)
  2822.     incl -100(%ebp)
  2823.     incl -20(%ebp)
  2824.     movl -8(%ebp),%edx
  2825.     cmpl -100(%ebp),%edx
  2826.     jg .L380
  2827. .L374:
  2828.     movl -68(%ebp),%edx
  2829.     movl 4(%edx),%eax
  2830.     andl $16777215,%eax
  2831.     movl -32(%ebp),%edx
  2832.     sall $24,%edx
  2833.     movl %edx,-88(%ebp)
  2834.     movl -68(%ebp),%edx
  2835.     addl -88(%ebp),%eax
  2836.     movl %eax,4(%edx)
  2837. .L362:
  2838.     cmpl $-1,16(%ebp)
  2839.     jne .L381
  2840.     pushl -68(%ebp)
  2841.     jmp .L392
  2842. .L381:
  2843.     cmpl $0,16(%ebp)
  2844.     jne .L382
  2845.     pushl -64(%ebp)
  2846. .L392:
  2847.     pushl -96(%ebp)
  2848.     pushl -4(%ebp)
  2849.     call gerepile
  2850.     jmp .L289
  2851. .L382:
  2852.     pushl $0
  2853.     pushl -96(%ebp)
  2854.     pushl -4(%ebp)
  2855.     call gerepile
  2856.     andl $-4,%eax
  2857.     movl 16(%ebp),%edx
  2858.     movl -68(%ebp),%ecx
  2859.     addl %eax,%ecx
  2860.     movl %ecx,(%edx)
  2861.     movl -64(%ebp),%edx
  2862.     leal (%eax,%edx),%eax
  2863. .L289:
  2864.     leal -116(%ebp),%esp
  2865.     popl %ebx
  2866.     popl %esi
  2867.     popl %edi
  2868.     leave
  2869.     ret
  2870. .comm in_saved_avma,4
  2871.